| STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 234201 |
| /disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2678 · P5356 |
![]() | This is the info page for Flash #267766 |
| +1234567890 |
| taberinos |
| <p align="left"><font face="tonypa5x5_8pt_st" size="8" color="#ffffff" letterSpacing="1.000000" kerning="0"><a href="http://www.tonypa.pri.ee" target = "_blank">GAME BY TONYPA WWW.TONYPA.PRI.EE</a></font></p> |
| V 3-2010 AG |
| hit lines to remove them clear all before running out of shots |
| node is removed once no more lines are connected to it |
| complete level with fewer shots to receive more bonus points |
| you receive extra shot for every 5 levels |
| angry node can generate new line when hit |
| hit overgrown node to shrink it back to normal size |
| 0 |
| 0 |
| SHOTS |
| SCORE |
| 0 |
| LIVES |
| LEVEL |
| <p align="left"><font face="tonypa5x5_8pt_st" size="8" color="#ffffff" letterSpacing="1.000000" kerning="0"><a href="http://www.incompetech.com" target = "_blank">MUSIC BY KEVIN MACLEOD WWW.INCOMPETECH.COM</a></font></p> |
ActionScript [AS3]
Section 1//ads_mc_15 (taberinos_fla.ads_mc_15) package taberinos_fla { import flash.display.*; public dynamic class ads_mc_15 extends MovieClip { public function ads_mc_15(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package taberinos_flaSection 2//ag_intro_mc_1 (taberinos_fla.ag_intro_mc_1) package taberinos_fla { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class ag_intro_mc_1 extends MovieClip { public var ag_but:SimpleButton; public function ag_intro_mc_1(){ addFrameScript(0, frame1, 81, frame82, 217, frame218); } function frame82(){ ag_but.addEventListener(MouseEvent.CLICK, openAG); } function frame218(){ ag_but.removeEventListener(MouseEvent.CLICK, openAG); MovieClip(this.parent).gotoAndStop(3); } function frame1(){ this.gotoAndPlay(2); } public function openAG(_arg1:Event){ navigateToURL(new URLRequest("http://www.armorgames.com"), "_blank"); } } }//package taberinos_flaSection 3//help_mc_7 (taberinos_fla.help_mc_7) package taberinos_fla { import flash.display.*; public dynamic class help_mc_7 extends MovieClip { public function help_mc_7(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package taberinos_flaSection 4//MainTimeline (taberinos_fla.MainTimeline) package taberinos_fla { import flash.display.*; public dynamic class MainTimeline extends MovieClip { public var main_mc:empty_mc; public var soundonoff_mc:MovieClip; public var domainLock:Array; public var myPre:Preloader; public var help_mc:MovieClip; public var ads_mc:MovieClip; public var currentDomain:String; public var txt_mc:MovieClip; public var mygame:Game; public var domainLockTo:Array; public function MainTimeline(){ addFrameScript(0, frame1, 2, frame3); } function frame3(){ domainLockTo = "armorgames.com".split("."); currentDomain = this.root.loaderInfo.url.toLowerCase().split("/")[2]; domainLock = currentDomain.split("."); if (((!((domainLock[(domainLock.length - 1)] == domainLockTo[(domainLockTo.length - 1)]))) || (!((domainLock[(domainLock.length - 2)] == domainLockTo[(domainLockTo.length - 2)]))))){ this.gotoAndStop(2); } else { mygame = new Game(this); }; stop(); } function frame1(){ myPre = new Preloader(this); stop(); } } }//package taberinos_flaSection 5//sound_mc_4 (taberinos_fla.sound_mc_4) package taberinos_fla { import flash.display.*; public dynamic class sound_mc_4 extends MovieClip { public function sound_mc_4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package taberinos_flaSection 6//soundonoff_mc_13 (taberinos_fla.soundonoff_mc_13) package taberinos_fla { import flash.display.*; public dynamic class soundonoff_mc_13 extends MovieClip { public var soundonoff_but:SimpleButton; public function soundonoff_mc_13(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package taberinos_flaSection 7//txt_mc_12 (taberinos_fla.txt_mc_12) package taberinos_fla { import flash.display.*; import flash.text.*; public dynamic class txt_mc_12 extends MovieClip { public var lives_txt:TextField; public var score_txt:TextField; public var shots_txt:TextField; public function txt_mc_12(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package taberinos_flaSection 8//CircleCollision (vector2D.CircleCollision) package vector2D { public class CircleCollision { private var p1p2:Vector2D; private var EPSILON:Number;// = 1E-7 private var p1p2n:Vector2D; private var circle:Object; public var closestPointOnLine:Vector2D; public var mtd:Vector2D; public var collision:Boolean;// = false private var sap:Vector2D; private var saq:Vector2D; private var r:Number;// = 0 public var t:Number;// = 0 private var p1p2len:Number; public function CircleCollision(_arg1:Number=0, _arg2:Number=0){ EPSILON = 1E-7; r = 0; t = 0; collision = false; super(); } public function circle2Circle(_arg1:Object, _arg2:Object):void{ var _local3:Vector2D; var _local4:Vector2D; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; mtd = new Vector2D(0, 0); t = 0; collision = false; _local3 = _arg2.p.minus(_arg1.p); _local4 = _arg2.v.minus(_arg1.v); _local5 = (_arg1.r + _arg2.r); _local6 = (_local3.dot(_local3) - (_local5 * _local5)); if (_local6 < -(EPSILON)){ collision = true; if (_local3.len() < EPSILON){ _local3 = _local3.plus(new Vector2D(EPSILON, EPSILON)); }; mtd = _local3.n().times((_local5 - _local3.len())); return; }; _local7 = _local4.dot(_local4); if (_local7 < EPSILON){ return; }; _local8 = _local4.dot(_local3); if (_local8 >= 0){ return; }; _local9 = ((_local8 * _local8) - (_local7 * _local6)); if (_local9 < 0){ return; }; t = ((-(_local8) - Math.sqrt(_local9)) / _local7); if ((((t > 1)) || ((t < EPSILON)))){ return; }; collision = true; } public function line2MovingCircle(_arg1:Object, _arg2:Vector2D, _arg3:Vector2D):void{ var _local4:Vector2D; var _local5:Vector2D; var _local6:Vector2D; var _local7:Vector2D; var _local8:Vector2D; var _local9:Vector2D; var _local10:Vector2D; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; t = 0; collision = false; r = _arg1.r; circle = _arg1; _local4 = point2Line(_arg1.p, _arg2, _arg3); closestPointOnLine = _local4; _local5 = _local4.minus(_arg1.p); if ((r * r) > _local5.len2()){ mtd = _local5.n().times((r - _local5.len())); collision = true; return; }; if (_local5.dot(_arg1.v) < 0){ return; }; mtd = _arg3.minus(_arg2); mtd = new Vector2D(-(mtd.y), mtd.x); _local6 = _arg1.p; _local7 = _arg1.p.plus(_arg1.v); p1p2 = _local7.minus(_local6); p1p2n = p1p2.n(); p1p2len = p1p2.len(); sap = _local6.minus(_arg2); saq = _local6.minus(_arg3); _local8 = _arg3.minus(_arg2); _local9 = sap; _local10 = p1p2; _local11 = _local9.dot(_local8); _local12 = _local10.dot(_local8); _local13 = _local8.dot(_local8); if ((((_local11 < 0)) && (((_local11 + _local12) < 0)))){ line2Circle(sap, _arg2); return; }; if ((((_local11 > _local13)) && (((_local11 + _local12) > _local13)))){ line2Circle(saq, _arg3); return; }; _local14 = _local10.dot(_local10); _local15 = _local9.dot(_local10); _local16 = ((_local13 * _local14) - (_local12 * _local12)); _local17 = (_local9.dot(_local9) - (r * r)); _local18 = ((_local13 * _local17) - (_local11 * _local11)); if (Math.abs(_local16) < EPSILON){ if (_local18 > 0){ return; }; if (_local11 < 0){ line2Circle(sap, _arg2); return; }; if (_local11 > _local13){ line2Circle(saq, _arg3); return; }; t = 0; collision = true; return; }; _local19 = ((_local13 * _local15) - (_local12 * _local11)); _local20 = ((((_local13 * _local15) - (_local12 * _local11)) * _local19) - (_local16 * _local18)); if (_local20 < 0){ return; }; t = ((-(_local19) - Math.sqrt(_local20)) / _local16); if ((_local11 + (t * _local12)) < 0){ line2Circle(sap, _arg2); return; }; if ((_local11 + (t * _local12)) > _local13){ line2Circle(saq, _arg3); return; }; if ((((t < 0)) || ((t > 1)))){ return; }; if (_arg1.v.dot(mtd) < 0){ mtd = mtd.times(-1); }; collision = true; } private function line2Circle(_arg1:Vector2D, _arg2:Vector2D):void{ var _local3:Number; var _local4:Number; var _local5:Number; _local3 = _arg1.dot(p1p2n); _local4 = (_arg1.dot(_arg1) - (r * r)); if ((((_local4 > 0)) && ((_local3 > 0)))){ return; }; _local5 = ((_local3 * _local3) - _local4); if (_local5 < 0){ return; }; t = (-(_local3) - Math.sqrt(_local5)); if (t < 0){ t = 0; }; if (t > p1p2len){ return; }; t = (t / p1p2len); mtd = _arg2.minus(circle.p.plus(circle.v.n().times(t))); collision = true; } public function point2Line(_arg1:Vector2D, _arg2:Vector2D, _arg3:Vector2D):Vector2D{ var _local4:Vector2D; var _local5:Vector2D; var _local6:Number; _local4 = _arg3.minus(_arg2); _local5 = _arg1.minus(_arg2); _local6 = (_local5.dot(_local4) / _local4.dot(_local4)); _local6 = clamp(_local6, 0, 1); return (_arg2.plus(_local4.times(_local6))); } private function clamp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ if (_arg1 < _arg2){ _arg1 = _arg2; }; if (_arg1 > _arg3){ _arg1 = _arg3; }; return (_arg1); } } }//package vector2DSection 9//Collision (vector2D.Collision) package vector2D { public class Collision { public static function findAllCollisions(_arg1:Array, _arg2:Array):void{ var _local3:Number; var _local4:Vector2D; var _local5:int; var _local6:int; var _local7:int; var _local8:CircleCollision; var _local9:int; var _local10:*; var _local11:int; var _local12:Vector2D; var _local13:Vector2D; var _local14:*; _local3 = 1; _local4 = new Vector2D(0, 0); _local5 = -1; _local6 = -1; _local7 = -1; _local8 = new CircleCollision(); _local9 = 0; while (_local9 < 1) { _local10 = _arg1[_local9]; _local11 = 0; while (_local11 < _arg2.length) { _local12 = _arg2[_local11].p; _local13 = _arg2[(_local11 + 1)].p; _local8.line2MovingCircle(_local10, _local12, _local13); if (_local8.collision == true){ if (_local8.t == 0){ _local3 = 0; _local4 = _local8.mtd; _local5 = _local9; _local6 = -1; if (_local11 > 7){ _local10.linep1 = _arg2[_local11]; _local10.linep2 = _arg2[(_local11 + 1)]; _local10.linep = _local8.closestPointOnLine; _local10.lineV = _local4; _local7 = _local11; }; } else { if (_local8.t < _local3){ _local4 = _local8.mtd; _local3 = _local8.t; _local5 = _local9; _local6 = -1; if (_local11 > 7){ _local10.linep1 = _arg2[_local11]; _local10.linep2 = _arg2[(_local11 + 1)]; _local10.linep = _local8.closestPointOnLine; _local10.lineV = _local4; _local7 = _local11; }; }; }; }; _local11 = (_local11 + 2); }; _local11 = (_local9 + 1); while (_local11 < _arg1.length) { _local14 = _arg1[_local11]; if (_local14.r > 0){ _local8.circle2Circle(_local10, _local14); if (_local8.collision == true){ if (_local8.t == 0){ _local3 = 0; _local4 = _local8.mtd; _local6 = _local11; _local5 = _local9; } else { if (_local8.t < _local3){ _local3 = _local8.t; _local6 = _local11; _local5 = _local9; }; }; }; }; _local11++; }; _local9++; }; if (_local5 > -1){ _local10 = _arg1[_local5]; _local10.wall = true; if (_local6 == -1){ if (_local3 == 0){ _local4 = _local4.n().times((_local4.len() + 0.1)); _local10.p = _local10.p.minus(_local4); } else { if (_local3 > 0.001){ _local3 = (_local3 - 0.001); }; _local10.p = _local10.p.plus(_local10.v.times(_local3)); }; _local4 = new Vector2D(-(_local4.y), _local4.x).n(); _local10.v = resolveBallWall(_local10, _local4); if (_local7 > -1){ _local10 = _arg2.splice(_local7, 2); }; } else { _local10.lineV = 0; _local10.ball2 = _arg1[_local6]; _local14 = _arg1[_local6]; _local14.spr.gotoAndPlay(2); if (_local3 == 0){ _local4 = _local4.n().times((_local4.len() + 0.1)); _local10.p = _local10.p.minus(_local4); } else { if (_local3 > 0.001){ _local3 = (_local3 - 0.001); }; _local10.p = _local10.p.plus(_local10.v.times(_local3)); }; _local4 = _local14.p.minus(_local10.p).n(); _local4 = new Vector2D(-(_local4.y), _local4.x).n(); _local10.v = resolveBallWall(_local10, _local4); }; }; if (_local3 > 0){ _local9 = 0; while (_local9 < 1) { _local10 = _arg1[_local9]; _arg1[_local9].p = _local10.p.plus(_local10.v.times(_local3)); _local10.spr.x = _local10.p.x; _local10.spr.y = _local10.p.y; _local9++; }; }; } public static function resolveBallBall(_arg1:Object, _arg2:Object, _arg3:Vector2D):Object{ var _local4:*; var _local5:Vector2D; var _local6:Number; var _local7:Vector2D; var _local8:Vector2D; var _local9:Vector2D; var _local10:Vector2D; _local4 = new Object(); _local5 = new Vector2D(-(_arg3.y), _arg3.x); _local6 = _arg1.v.dot(_arg3); _local7 = _arg3.times(_local6); _local6 = _arg1.v.dot(_local5); _local8 = _local5.times(_local6); _local6 = _arg2.v.dot(_arg3); _local9 = _arg3.times(_local6); _local6 = _arg2.v.dot(_local5); _local10 = _local5.times(_local6); if (_local9.dot(_arg3) < 0){ _local9 = _local9.times(-1); }; if (_local7.dot(_arg3) > 0){ _local7 = _local7.times(-1); }; _local4.v1 = _local9.plus(_local8); _local4.v2 = _local7.plus(_local10); return (_local4); } public static function resolveBallWall(_arg1:Object, _arg2:Vector2D):Vector2D{ var _local3:Vector2D; var _local4:Number; var _local5:Vector2D; var _local6:Vector2D; _local3 = new Vector2D(-(_arg2.y), _arg2.x); _local4 = _arg1.v.dot(_arg2); _local5 = _arg2.times(_local4); _local4 = _arg1.v.dot(_local3); _local6 = _local3.times(_local4); if (_local6.dot(_local3) < 0){ _local6 = _local6.times(-1); }; _arg2 = _local5.plus(_local6); return (_arg2); } } }//package vector2DSection 10//Geom2D (vector2D.Geom2D) package vector2D { public class Geom2D { public static function Point2D(_arg1:Number=0, _arg2:Number=0):Vector2D{ return (new Vector2D(_arg1, _arg2)); } public static function Circle2D(_arg1:Vector2D, _arg2:Number):Object{ var _local3:Object; _local3 = new Object(); _local3.p = _arg1; _local3.r = _arg2; return (_local3); } public static function Box2D(_arg1:Vector2D, _arg2:Number, _arg3:Number):Object{ var _local4:Number; var _local5:Number; var _local6:Object; _local4 = (_arg2 / 2); _local5 = (_arg3 / 2); _local6 = new Object(); _local6.p1 = Geom2D.Point2D((_arg1.x - _local4), (_arg1.y - _local5)); _local6.p2 = Geom2D.Point2D((_arg1.x + _local4), (_arg1.y - _local5)); _local6.p3 = Geom2D.Point2D((_arg1.x + _local4), (_arg1.y + _local5)); _local6.p4 = Geom2D.Point2D((_arg1.x - _local4), (_arg1.y + _local5)); _local6.xmin = _local6.p1.x; _local6.xmax = _local6.p3.x; _local6.ymin = _local6.p1.y; _local6.ymax = _local6.p3.y; return (_local6); } public static function Triangle2D(_arg1:Vector2D, _arg2:Vector2D, _arg3:Vector2D):Object{ var _local4:Object; _local4 = new Object(); _local4.p1 = _arg1; _local4.p2 = _arg2; _local4.p3 = _arg3; return (_local4); } } }//package vector2DSection 11//Vector2D (vector2D.Vector2D) package vector2D { public class Vector2D { public var x:Number; public var y:Number; public function Vector2D(_arg1:Number=0, _arg2:Number=0){ x = _arg1; y = _arg2; } public function times(_arg1:Number):Vector2D{ return (new Vector2D((x * _arg1), (y * _arg1))); } public function dot(_arg1:Vector2D):Number{ return (((x * _arg1.x) + (y * _arg1.y))); } public function n():Vector2D{ var _local1:Number; _local1 = len(); if (_local1 == 0){ return (new Vector2D()); }; return (new Vector2D((x / _local1), (y / _local1))); } public function len():Number{ var _local1:Number; _local1 = ((x * x) + (y * y)); if (_local1 == 0){ return (0); }; return (Math.sqrt(_local1)); } public function minusEquals(_arg1:Vector2D):void{ x = (x - _arg1.x); y = (y - _arg1.y); } public function minus(_arg1:Vector2D):Vector2D{ return (new Vector2D((x - _arg1.x), (y - _arg1.y))); } public function plus(_arg1:Vector2D):Vector2D{ return (new Vector2D((x + _arg1.x), (y + _arg1.y))); } public function len2():Number{ return (((x * x) + (y * y))); } public static function parV(_arg1:Vector2D, _arg2:Vector2D):Boolean{ var _local3:Vector2D; var _local4:Vector2D; _local3 = Vector2D.dir(_arg1); _local4 = Vector2D.dir(_arg2); if ((((((_local3.x == _local4.x)) && ((_local3.y == _local4.y)))) || ((((_local3.x == -(_local4.x))) && ((_local3.y == -(_local4.y))))))){ return (true); }; return (false); } public static function minusV(_arg1:Vector2D, _arg2:Vector2D):Vector2D{ return (new Vector2D((_arg1.x - _arg2.x), (_arg1.y - _arg2.y))); } public static function bounce(_arg1:Vector2D, _arg2:Vector2D):Vector2D{ var _local3:Vector2D; var _local4:Vector2D; var _local5:Vector2D; _local3 = Vector2D.projectV(_arg1, _arg2); _local4 = new Vector2D(-(_arg2.y), _arg2.x); _local5 = Vector2D.projectV(_arg1, _local4); return (Vector2D.minusV(_local3, _local5)); } public static function multiplyN(_arg1:Vector2D, _arg2:Number):Vector2D{ return (new Vector2D((_arg1.x * _arg2), (_arg1.y * _arg2))); } public static function b2Line(_arg1:Object, _arg2:Object):Array{ var _local3:Array; var _local4:Vector2D; var _local5:Vector2D; var _local6:Number; var _local7:Vector2D; var _local8:Number; var _local9:Object; var _local10:Array; var _local11:Array; _local3 = [Number.MAX_VALUE]; _local4 = new Vector2D(-(_arg2.vel.y), _arg2.vel.x); _local4 = Vector2D.dir(_local4); _local5 = Vector2D.minusV(_arg2.pos, _arg1.pos); _local5 = Vector2D.projectV(_local5, _local4); _local6 = Vector2D.intersect(_arg1.pos, Vector2D.multiplyN(_local5, _arg1.r), _arg2.pos, _arg2.vel); if ((((Vector2D.len(_local5) < _arg1.r)) && (!((_local6 == Number.MAX_VALUE))))){ _local3[0] = -((_arg1.r - Vector2D.len(_local5))); _local3[1] = _arg2.vel; _local3[2] = Vector2D.inverse(_local4); if (Vector2D.dp(_local4, _local5) > 0){ _local3[2] = Vector2D.inverse(_local3[2]); if (Vector2D.dp(_local4, _arg1.vel) < 0){ _local3[4] = 1; }; } else { if (Vector2D.dp(_local4, _arg1.vel) > 0){ _local3[4] = 1; }; }; return (_local3); }; if (Vector2D.dp(_local4, _local5) > 0){ _local4 = Vector2D.inverse(_local4); }; _local4 = Vector2D.multiplyN(_local4, _arg1.r); _local7 = Vector2D.addV(_arg2.pos, _local4); _local8 = Vector2D.intersect(_arg1.pos, _arg1.vel, _local7, _arg2.vel); if ((((Vector2D.dp(_local4, _arg1.vel) < 0)) && (!((_local8 == Number.MAX_VALUE))))){ _local3[0] = _local8; _local3[1] = _arg2.vel; } else { if (_local6 == Number.MAX_VALUE){ _local9 = new Object(); _local9.r = 0; _local9.pos = new Vector2D(_arg2.pos.x, _arg2.pos.y); _local10 = Vector2D.b2b(_arg1, _local9); _local9.pos = Vector2D.addV(_local9.pos, _arg2.vel); _local11 = Vector2D.b2b(_arg1, _local9); if ((((_local10[0] == -(Number.MAX_VALUE))) || ((_local11[0] == -(Number.MAX_VALUE))))){ return (_local3); }; if (_local10[0] < _local11[0]){ _local3 = _local10; } else { if (_local11[0] != Number.MAX_VALUE){ _local3 = _local11; }; }; }; }; return (_local3); } public static function dp(_arg1:Vector2D, _arg2:Vector2D):Number{ return (((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y))); } public static function dir(_arg1:Vector2D):Vector2D{ var _local2:Number; _local2 = Vector2D.len(_arg1); if (_local2 == 0){ return (new (Vector2D)); }; return (new Vector2D((_arg1.x / _local2), (_arg1.y / _local2))); } public static function inverse(_arg1:Vector2D):Vector2D{ return (new Vector2D(-(_arg1.x), -(_arg1.y))); } public static function b2b(_arg1:Object, _arg2:Object):Array{ var _local3:Array; var _local4:Vector2D; var _local5:Number; var _local6:Vector2D; var _local7:Vector2D; var _local8:Number; var _local9:Number; var _local10:Number; _local3 = [Number.MAX_VALUE]; _local4 = new Vector2D(_arg2.pos.x, _arg2.pos.y); _local4 = Vector2D.minusV(_local4, _arg1.pos); _local5 = (_arg1.r + _arg2.r); if (Vector2D.len(_local4) >= _local5){ if (Vector2D.dp(_local4, _arg1.vel) < 0){ return (_local3); }; _local6 = Vector2D.projectV(_local4, new Vector2D(-(_arg1.vel.y), _arg1.vel.x)); if (Vector2D.len(_local6) <= _local5){ _local7 = Vector2D.projectV(_local4, _arg1.vel); _local8 = Math.sqrt(((_local5 * _local5) - (Vector2D.len(_local6) * Vector2D.len(_local6)))); _local7 = Vector2D.multiplyN(Vector2D.dir(_local7), (Vector2D.len(_local7) - _local8)); _local9 = (Vector2D.len(_local7) / Vector2D.len(_arg1.vel)); _local10 = 0; if ((((_local9 < _local10)) || ((_local9 > (1 - _local10))))){ return (_local3); }; _local3[0] = _local9; _local4 = Vector2D.addV(_local4, Vector2D.multiplyN(_arg1.vel, -(_local9))); _local3[1] = new Vector2D(-(_local4.y), _local4.x); }; } else { _local3[0] = (-((_local5 - Vector2D.len(_local4))) - 1); _local3[1] = new Vector2D(_local4.y, -(_local4.x)); _local3[2] = Vector2D.dir(_local4); if (Vector2D.dp(_local4, _arg1.vel) < 0){ _local3[4] = 1; }; }; return (_local3); } public static function perP(_arg1:Vector2D, _arg2:Vector2D):Number{ return (((_arg1.x * _arg2.y) - (_arg1.y * _arg2.x))); } public static function addV(_arg1:Vector2D, _arg2:Vector2D):Vector2D{ return (new Vector2D((_arg1.x + _arg2.x), (_arg1.y + _arg2.y))); } public static function len(_arg1:Vector2D):Number{ var _local2:Number; _local2 = ((_arg1.x * _arg1.x) + (_arg1.y * _arg1.y)); if (_local2 == 0){ return (0); }; return (Math.sqrt(_local2)); } public static function projectV(_arg1:Vector2D, _arg2:Vector2D):Vector2D{ var _local3:Vector2D; var _local4:Number; _local3 = Vector2D.dir(_arg2); _local4 = Vector2D.dp(_arg1, _local3); return (new Vector2D((_local4 * _local3.x), (_local4 * _local3.y))); } public static function intersect(_arg1:Vector2D, _arg2:Vector2D, _arg3:Vector2D, _arg4:Vector2D):Number{ var _local5:Number; var _local6:Number; var _local7:Vector2D; _local5 = Number.MAX_VALUE; _local6 = Number.MAX_VALUE; if (Vector2D.parV(_arg2, _arg4) == false){ _local7 = Vector2D.minusV(_arg3, _arg1); _local5 = (Vector2D.perP(_local7, _arg4) / Vector2D.perP(_arg2, _arg4)); _local7 = Vector2D.inverse(_local7); _local6 = (Vector2D.perP(_local7, _arg2) / Vector2D.perP(_arg4, _arg2)); if ((((((((_local5 <= 0)) || ((_local6 <= 0)))) || ((_local5 > 1)))) || ((_local6 > 1)))){ _local5 = Number.MAX_VALUE; }; }; return (_local5); } } }//package vector2DSection 12//ball_mc (ball_mc) package { import flash.display.*; public dynamic class ball_mc extends MovieClip { } }//packageSection 13//dot_mc (dot_mc) package { import flash.display.*; public dynamic class dot_mc extends MovieClip { public function dot_mc(){ addFrameScript(0, frame1, 39, frame40, 79, frame80); } function frame80(){ stop(); } function frame1(){ stop(); } function frame40(){ this.gotoAndStop(1); } } }//packageSection 14//empty_mc (empty_mc) package { import flash.display.*; public dynamic class empty_mc extends MovieClip { } }//packageSection 15//evildot_mc (evildot_mc) package { import flash.display.*; public dynamic class evildot_mc extends MovieClip { public function evildot_mc(){ addFrameScript(0, frame1, 39, frame40, 79, frame80); } function frame80(){ stop(); } function frame1(){ stop(); } function frame40(){ this.gotoAndStop(1); } } }//packageSection 16//Game (Game) package { import flash.display.*; import flash.events.*; import vector2D.*; import flash.media.*; import flash.geom.*; import flash.net.*; import flash.system.*; public class Game extends Sprite { private var evilDots:int; private var agi; private var stageW:Number; private var emptyPosArr:Array; private var stageH:Number; private var lifeLeft:int; private var extraLife:int; private var linesOb:Object; private var deadLinesArr:Array; private var gridSize:int; private var bigDots:int; private var doEnterFrame:Function; private var colors:Object; private var ballsArr:Array; private var myParent; private var dotsMade:int; private var level:int; private var mySoundsCh:Object; private var score:int; private var bmp:Bitmap; private var myColT:ColorTransform; private var scoremc:MovieClip; private var gameMode:int; private var linesArr:Array; private var totalShots:int; private var numOfDots:int; private var powerDots:int; private var deadBallsArr:Array; public function Game(_arg1:Sprite){ var _local2:int; var _local3:String; var _local4:URLRequest; var _local5:Loader; var _local6:int; super(); myParent = _arg1; myParent.stage.scaleMode = "noScale"; stageW = 600; stageH = 450; gridSize = 40; colors = new Object(); colors.myColorWhite = 0xFFFFFF; colors.myColorBlack = 0; colors.myColorRed = 16750899; colors.myColorBlue = 6724095; colors.myColorGreen = 0x33CC00; myParent.main_mc.mouseChildren = false; myParent.main_mc.mouseEnabled = false; bmp = new Bitmap(new BitmapData(stageW, stageH, true, 0), "always", false); myParent.main_mc.addChild(bmp); scoremc = new score_mc(); myColT = new ColorTransform(1, 1, 1, 1, 0, 0, 0, -5); numOfDots = 25; ballsArr = []; emptyPosArr = []; deadLinesArr = []; deadBallsArr = []; linesOb = new Object(); drawWallVectors(); _local2 = 1; while (_local2 < 15) { _local6 = 2; while (_local6 < 11) { emptyPosArr.push(_local2); emptyPosArr.push(_local6); _local6++; }; _local2++; }; mySoundsCh = new Object(); mySoundsCh.soundCounter = 0; mySoundsCh.soundOn = 1; mySoundsCh.tr = new SoundTransform(0.4, 0); addLoop(); myParent.addEventListener(MouseEvent.MOUSE_DOWN, clickToStart); _local3 = "http://agi.armorgames.com/assets/agi/AGI.swf"; Security.allowDomain(_local3); _local4 = new URLRequest(_local3); _local5 = new Loader(); _local5.contentLoaderInfo.addEventListener(Event.COMPLETE, agiLoadComplete); _local5.load(_local4); } private function createLine(_arg1:Object, _arg2:Object):Object{ var _local3:*; var _local4:Number; _local3 = new Object(); _local3.b1 = _arg1; _local3.b2 = _arg2; _local3.mc = new line_mc(); _local4 = (_arg2.p.minus(_arg1.p).len() + 1); myParent.main_mc.addChildAt(_local3.mc, 1); drawVector(_local3, colors.myColorWhite); return (_local3); } private function rand(_arg1:int, _arg2:int):int{ var _local3:int; _local3 = (_arg1 + Math.floor((Math.random() * (_arg2 - _arg1)))); return (_local3); } function agiLoadComplete(_arg1:Event):void{ agi = _arg1.currentTarget.content; } public function setUpGame(){ var _local1:*; score = 0; lifeLeft = 3; level = 1; extraLife = 15000; ballsArr = []; deadLinesArr = []; deadBallsArr = []; _local1 = Geom2D.Circle2D(new Vector2D((stageW / 2), ((stageH / 2) - 5)), 12); _local1.spr = new ball_mc(); _local1.moving = false; placeBall(_local1); _local1.spr.gotoAndStop(2); dotsMade = 0; bigDots = 0; evilDots = 0; powerDots = 0; myParent.addEventListener(Event.ENTER_FRAME, update); doEnterFrame = startGame; addSound("s_levelup"); } private function closeHighScoreAndAd():void{ myParent.ads_mc.removeChild(agi); myParent.help_mc.gotoAndStop(1); myParent.help_mc.visible = true; mySoundsCh.soundCounter = 0; addLoop(); myParent.addEventListener(MouseEvent.MOUSE_DOWN, clickToStart); } private function soundLoop(_arg1:Event):void{ addLoop(); } private function startGame():void{ if (myParent.txt_mc.shots_txt != null){ showText(); }; addBall(); add2Lines(ballsArr[(ballsArr.length - 1)]); if (ballsArr.length > (numOfDots + level)){ doEnterFrame = mainloop; ballsArr[0].spr.gotoAndStop(1); myParent.addEventListener(MouseEvent.MOUSE_DOWN, mdown); if (level == 2){ myParent.help_mc.gotoAndStop(2); myParent.help_mc.visible = true; } else { if (level == 3){ myParent.help_mc.gotoAndStop(3); myParent.help_mc.visible = true; } else { if (level == 4){ myParent.help_mc.gotoAndStop(4); myParent.help_mc.visible = true; } else { if (level == 5){ myParent.help_mc.gotoAndStop(5); myParent.help_mc.visible = true; } else { if (level == 6){ myParent.help_mc.gotoAndStop(6); myParent.help_mc.visible = true; }; }; }; }; }; }; } private function endGame():void{ var _local1:String; var _local2:String; var _local3:int; var _local4:int; var _local5:*; if (linesArr.length > 8){ _local3 = linesArr.pop().n; _local4 = linesArr.pop().n; _local5 = linesOb[((_local4 + "_") + _local3)]; myParent.main_mc.removeChild(_local5.mc); return; }; if (ballsArr.length > 0){ _local5 = ballsArr.pop(); myParent.main_mc.removeChild(_local5.spr); return; }; evilDots--; if (evilDots > 0){ return; }; bmp.bitmapData = new BitmapData(stageW, stageH, true, 0); myParent.removeEventListener(Event.ENTER_FRAME, update); addLoop(true); myParent.ads_mc.addChild(agi); _local1 = "475c133c097733698945bf27d3fe4778"; _local2 = "taberinos"; agi.init(_local1, _local2); agi.initAGUI({onClose:closeHighScoreAndAd}); agi.showScoreboardSubmit(score); } private function drawWallVectors(){ var _local1:Vector2D; var _local2:Vector2D; var _local3:Vector2D; var _local4:Vector2D; var _local5:Vector2D; var _local6:*; myParent.graphics.clear(); linesArr = []; _local1 = new Vector2D((stageW / 2), (stageH / 2)); _local2 = _local1.minus(new Vector2D(280, 165)); _local3 = _local1.minus(new Vector2D(-280, 165)); _local4 = _local1.minus(new Vector2D(-280, -195)); _local5 = _local1.minus(new Vector2D(280, -195)); _local6 = new Object(); _local6.mc = myParent.main_mc; _local6.b1 = {p:_local2}; _local6.b2 = {p:_local3}; drawVector(_local6, colors.myColorWhite); _local6.b1 = {p:_local3}; _local6.b2 = {p:_local4}; drawVector(_local6, colors.myColorWhite); _local6.b1 = {p:_local4}; _local6.b2 = {p:_local5}; drawVector(_local6, colors.myColorWhite); _local6.b1 = {p:_local5}; _local6.b2 = {p:_local2}; drawVector(_local6, colors.myColorWhite); } private function mdown(_arg1:Event):void{ var _local2:*; var _local3:Vector2D; if (_arg1.target.name == "soundonoff_but"){ mySoundsCh.soundOn = (1 + (mySoundsCh.soundOn % 2)); myParent.soundonoff_mc.gotoAndStop(mySoundsCh.soundOn); addLoop(); return; }; if (myParent.help_mc.visible == true){ myParent.help_mc.visible = false; return; }; if (ballsArr.length == true){ return; }; _local2 = ballsArr[0]; if (_local2.moving == true){ return; }; if (gameMode == 1){ totalShots++; } else { totalShots--; }; _local2.linesKilled = 0; _local2.ballsKilled = 0; _local2.moving = true; _local2.spr.gotoAndStop(2); _local2.maxV = 8; _local3 = new Vector2D(myParent.mouseX, myParent.mouseY); _local2.v = _local3.minus(_local2.p); _local2.v = _local2.v.n().times(_local2.maxV); myParent.main_mc.addChild(ballsArr[0].spr); myParent.main_mc.addChild(bmp); bmp.bitmapData = new BitmapData(stageW, stageH, true, 0); addSound("s_shoot"); } private function placeBall(_arg1:Object){ myParent.main_mc.addChild(_arg1.spr); _arg1.spr.mouseEnabled = false; _arg1.spr.cacheAsBitmap = false; _arg1.v = new Vector2D(0, 0); ballsArr.push(_arg1); _arg1.spr.x = _arg1.p.x; _arg1.spr.y = _arg1.p.y; dotsMade++; } private function addBall():void{ var _local1:CircleCollision; var _local2:*; var _local3:Boolean; var _local4:int; var _local5:int; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:*; var _local10:Boolean; var _local11:int; _local1 = new CircleCollision(); _local2 = ballsArr[0].p; _local3 = false; _local4 = 0; while ((((_local4 < 50)) && ((_local3 == false)))) { _local4++; _local5 = rand(0, (emptyPosArr.length / 2)); _local5 = (_local5 * 2); _local6 = (_local2.x - (emptyPosArr[_local5] * gridSize)); _local7 = (_local2.y - (emptyPosArr[(_local5 + 1)] * gridSize)); _local8 = Math.sqrt(((_local6 * _local6) + (_local7 * _local7))); if (_local8 > (4 * ballsArr[0].r)){ _local9 = Geom2D.Circle2D(new Vector2D((emptyPosArr[_local5] * gridSize), (emptyPosArr[(_local5 + 1)] * gridSize)), 6); if (bigDots <= 0){ _local9.r = 0; } else { bigDots--; }; _local9.v = new Vector2D(0, 0); _local10 = true; _local11 = 0; while ((((_local11 < linesArr.length)) && ((_local10 == true)))) { _local1.line2MovingCircle(_local9, linesArr[_local11].p, linesArr[(_local11 + 1)].p); if (_local1.collision == true){ _local10 = false; }; _local11 = (_local11 + 2); }; if (_local10 == true){ _local6 = emptyPosArr.splice(_local5, 1); _local7 = emptyPosArr.splice(_local5, 1); _local9.xp = _local6; _local9.yp = _local7; if (_local9.r > 0){ if (powerDots > 0){ powerDots--; _local9.spr = new powerdot_mc(); _local9.power = true; _local9.r = 16; } else { if (evilDots <= 0){ _local9.spr = new dot_mc(); } else { if (evilDots > 0){ evilDots--; _local9.spr = new evildot_mc(); _local9.evil = true; }; }; }; _local9.spr.width = (_local9.r * 2); _local9.spr.height = (_local9.r * 2); } else { _local9.spr = new dot_mc(); _local9.spr.visible = false; }; _local9.n = dotsMade; _local9.lines = []; placeBall(_local9); _local3 = true; }; }; }; } private function drawScore(_arg1, _arg2:Vector2D, _arg3:Boolean=false):void{ if (_arg3 == false){ scoremc.txt.text = ("+" + _arg1); scoremc.x = _arg2.x; scoremc.y = _arg2.y; extraLife = (extraLife - _arg1); if ((((gameMode == 1)) && ((extraLife <= 0)))){ lifeLeft++; extraLife = 15000; bmp.bitmapData.draw(scoremc, scoremc.transform.matrix); scoremc.txt.text = "extra life"; scoremc.x = (stageW / 2); scoremc.y = ((stageH / 2) + 50); }; } else { scoremc.txt.text = String(_arg1); scoremc.x = (stageW / 2); scoremc.y = ((stageH / 2) + 100); }; bmp.bitmapData.draw(scoremc, scoremc.transform.matrix); } private function drawVector(_arg1:Object, _arg2:uint){ _arg1.mc.graphics.lineStyle(2, _arg2, 1, true, "none", null, null, 3); _arg1.mc.graphics.moveTo(_arg1.b1.p.x, _arg1.b1.p.y); _arg1.mc.graphics.lineTo(_arg1.b2.p.x, _arg1.b2.p.y); linesArr.push(_arg1.b1); linesArr.push(_arg1.b2); } private function update(_arg1:Event):void{ doEnterFrame(); } private function showText():void{ myParent.txt_mc.shots_txt.text = String(totalShots); myParent.txt_mc.score_txt.text = String(score); if (gameMode == 1){ myParent.txt_mc.lives_txt.text = String(lifeLeft); } else { myParent.txt_mc.lives_txt.text = String(level); }; } private function mainloop():void{ var _local1:*; var _local2:Boolean; var _local3:int; var _local4:Number; var _local5:Number; var _local6:Vector2D; var _local7:*; var _local8:*; var _local9:int; showText(); _local1 = ballsArr[0]; if (_local1.moving == false){ bmp.bitmapData.colorTransform(bmp.bitmapData.rect, myColT); _local6 = new Vector2D(myParent.mouseX, myParent.mouseY); _local6 = _local6.minus(_local1.p); _local1.spr.rotation = ((Math.atan2(_local6.y, _local6.x) * 180) / Math.PI); return; }; _local1.lineV = 0; _local1.ball2 = 0; _local1.wall = false; Collision.findAllCollisions(ballsArr, linesArr); if (_local1.lineV != 0){ _local7 = linesOb[((_local1.linep1.n + "_") + _local1.linep2.n)]; deadLinesArr.push(_local7); _local1.linesKilled++; score = (score + _local1.linesKilled); drawScore(_local1.linesKilled, _local1.linep); addSound("s_line"); } else { if (_local1.ball2 != 0){ if (_local1.ball2.evil == true){ add2Lines(_local1.ball2); addSound("s_angry"); } else { if (_local1.ball2.power == true){ _local1.ball2.r = 6; _local1.ball2.spr.width = (_local1.ball2.r * 2); _local1.ball2.spr.height = (_local1.ball2.r * 2); addSound("s_power"); } else { addSound("s_node"); }; }; } else { if (_local1.wall == true){ addSound("s_wall"); }; }; }; _local2 = true; _local3 = 0; while (_local3 < deadLinesArr.length) { _local7 = deadLinesArr[_local3]; if (_local7.mc.alpha > 0){ _local2 = false; _local7.mc.alpha = (_local7.mc.alpha - 0.02); } else { if (_local7.dead != true){ myParent.main_mc.removeChild(_local7.mc); _local7.dead = true; linesOb[((_local7.b1.n + "_") + _local7.b2.n)] = null; linesOb[((_local7.b2.n + "_") + _local7.b1.n)] = null; }; }; _local3++; }; if (_local2 == true){ _local3 = 1; while (_local3 < ballsArr.length) { _local1 = ballsArr[_local3]; _local8 = true; _local9 = 0; while (_local9 < _local1.lines.length) { if (linesOb[_local1.lines[_local9]] != null){ _local8 = false; }; _local9++; }; if (_local8 == true){ if (_local1.r > 0){ ballsArr[0].ballsKilled++; score = (score + (ballsArr[0].ballsKilled * 10)); drawScore((ballsArr[0].ballsKilled * 10), _local1.p); _local1.spr.gotoAndPlay("dead"); myParent.main_mc.addChildAt(_local1.spr, 1); addSound("s_pop"); } else { _local1.spr.gotoAndStop(_local1.spr.totalFrames); }; emptyPosArr.push(_local1.xp); emptyPosArr.push(_local1.yp); deadBallsArr.push(ballsArr.splice(_local3, 1)[0]); _local3--; }; _local3++; }; }; _local3 = 0; while (_local3 < deadBallsArr.length) { _local7 = deadBallsArr[_local3]; if (_local7.spr.currentFrame < _local7.spr.totalFrames){ _local2 = false; } else { if (_local7.dead != true){ myParent.main_mc.removeChild(_local7.spr); _local7.dead = true; }; }; _local3++; }; _local1 = ballsArr[0]; _local4 = 0.05; _local5 = _local1.v.len(); _local1.v = _local1.v.n().times((_local5 - _local4)); if (_local1.v.len() > 15){ _local1.v = _local1.v.n().times(15); }; if (_local1.v.len() < _local4){ _local1.v = new Vector2D(0, 0); if (_local2 == true){ if ((((gameMode == 1)) && ((_local1.ballsKilled == 0)))){ lifeLeft--; if (lifeLeft >= 0){ drawScore("life lost", _local1.p, true); }; }; if ((((gameMode == 2)) && ((ballsArr.length == 1)))){ score = (score + ((totalShots * 10) * level)); if (totalShots > 0){ drawScore(("level up bonus +" + ((totalShots * 10) * level)), _local1.p, true); }; level++; totalShots = (10 + Math.floor((level / 5))); bigDots = (level - 1); evilDots = Math.round(((level - 3) / 3)); powerDots = Math.floor((level / 6)); deadLinesArr = []; deadBallsArr = []; _local1.moving = false; _local1.spr.gotoAndStop(1); doEnterFrame = startGame; myParent.removeEventListener(MouseEvent.MOUSE_DOWN, mdown); addSound("s_levelup"); return; }; if ((((lifeLeft < 0)) || ((totalShots == 0)))){ lifeLeft = 0; drawScore("game over", _local1.p, true); showText(); doEnterFrame = endGame; evilDots = 100; myParent.removeEventListener(MouseEvent.MOUSE_DOWN, mdown); } else { deadLinesArr = []; deadBallsArr = []; _local1.moving = false; _local1.spr.gotoAndStop(1); if (gameMode == 1){ addBall(); add2Lines(ballsArr[(ballsArr.length - 1)]); _local3 = ballsArr.length; while (_local3 <= numOfDots) { if (rand(0, 2) == 0){ addBall(); add2Lines(ballsArr[(ballsArr.length - 1)]); }; _local3++; }; _local3 = 1; while (_local3 < rand(0, (score / 500))) { add2Lines(ballsArr[rand(1, ballsArr.length)]); _local3++; }; }; }; }; }; } private function addLoop(_arg1:Boolean=false):void{ var _local2:String; var _local3:Class; if (mySoundsCh.channel != null){ mySoundsCh.channel.stop(); mySoundsCh.channel.removeEventListener(Event.SOUND_COMPLETE, soundLoop); }; if ((((mySoundsCh.soundOn == 2)) || ((_arg1 == true)))){ return; }; mySoundsCh.soundCounter++; if (mySoundsCh.soundCounter > 6){ mySoundsCh.soundCounter = 1; }; _local2 = ("music" + mySoundsCh.soundCounter); _local3 = (myParent.loaderInfo.applicationDomain.getDefinition(_local2) as Class); mySoundsCh.sloop = new (_local3); mySoundsCh.channel = mySoundsCh.sloop.play(0, 2); mySoundsCh.channel.addEventListener(Event.SOUND_COMPLETE, soundLoop); } private function add2Lines(_arg1:Object):void{ var _local2:CircleCollision; var _local3:*; var _local4:Number; var _local5:Number; var _local6:int; var _local7:*; var _local8:Vector2D; var _local9:Boolean; var _local10:int; var _local11:Vector2D; var _local12:int; var _local13:Number; var _local14:String; var _local15:String; var _local16:*; var _local17:*; var _local18:*; var _local19:*; _local2 = new CircleCollision(); _local3 = ballsArr[0].p; _local4 = Number.MAX_VALUE; _local5 = Number.MAX_VALUE; _local6 = 1; while (_local6 < ballsArr.length) { _local7 = ballsArr[_local6]; if (_arg1 != _local7){ _local8 = _local2.point2Line(_local3, _arg1.p, _local7.p); if (_local8.minus(_local3).len() > (5 + ballsArr[0].r)){ _local9 = true; _local10 = 1; while ((((_local10 < ballsArr.length)) && ((_local9 == true)))) { _local16 = ballsArr[_local10]; if (((!((_local16 == _local7))) && (!((_local16 == _arg1))))){ _local2.line2MovingCircle(_local16, _arg1.p, _local7.p); if (_local2.collision == true){ _local9 = false; }; }; _local10++; }; _local11 = _arg1.p.minus(_local7.p).n(); _local12 = 0; while (_local12 < _local7.lines.length) { _local16 = _local7.lines[_local12]; _local17 = linesOb[_local16]; if (_local17 != null){ _local18 = _local17.b1.p.minus(_local17.b2.p).n(); if (Math.abs(_local11.dot(_local18)) >= 0.99999999){ _local9 = false; }; }; _local12++; }; _local12 = 0; while (_local12 < _arg1.lines.length) { _local16 = _arg1.lines[_local12]; _local17 = linesOb[_local16]; if (_local17 != null){ _local18 = _local17.b1.p.minus(_local17.b2.p).n(); if (Math.abs(_local11.dot(_local18)) >= 0.99999999){ _local9 = false; }; }; _local12++; }; _local13 = _arg1.p.minus(_local7.p).len2(); _local14 = ((_arg1.n + "_") + _local7.n); _local15 = ((_local7.n + "_") + _arg1.n); if ((((((linesOb[_local14] == null)) && ((linesOb[_local15] == null)))) && ((_local9 == true)))){ if ((((_local13 < _local4)) || ((rand(0, 20) == 0)))){ _local4 = _local13; _local19 = _local7; }; }; }; }; _local6++; }; if (_local19 != null){ _local14 = ((_arg1.n + "_") + _local19.n); _local15 = ((_local19.n + "_") + _arg1.n); if ((((linesOb[_local14] == null)) && ((linesOb[_local15] == null)))){ linesOb[_local14] = createLine(_arg1, _local19); linesOb[_local15] = linesOb[_local14]; _arg1.lines.push(_local14); _local19.lines.push(_local15); }; }; } private function addSound(_arg1:String):void{ var _local2:Class; if (mySoundsCh.soundOn == 2){ return; }; _local2 = (myParent.loaderInfo.applicationDomain.getDefinition(_arg1) as Class); mySoundsCh.sloop = new (_local2); mySoundsCh.sch = mySoundsCh.sloop.play(0, 1); mySoundsCh.sch.soundTransform = mySoundsCh.tr; } private function clickToStart(_arg1:Event):void{ if (_arg1.target.name == "soundonoff_but"){ mySoundsCh.soundOn = (1 + (mySoundsCh.soundOn % 2)); myParent.soundonoff_mc.gotoAndStop(mySoundsCh.soundOn); addLoop(); return; }; if (_arg1.target.name == "mode1"){ myParent.txt_mc.gotoAndStop(2); gameMode = 1; totalShots = 0; numOfDots = 25; } else { if (_arg1.target.name == "mode2"){ myParent.txt_mc.gotoAndStop(3); gameMode = 2; totalShots = 10; numOfDots = 10; } else { myParent.txt_mc.gotoAndStop(3); gameMode = 2; totalShots = 10; numOfDots = 10; }; }; myParent.help_mc.visible = false; myParent.removeEventListener(MouseEvent.MOUSE_DOWN, clickToStart); setUpGame(); } } }//packageSection 17//line_mc (line_mc) package { import flash.display.*; public dynamic class line_mc extends MovieClip { } }//packageSection 18//music1 (music1) package { import flash.media.*; public dynamic class music1 extends Sound { } }//packageSection 19//music2 (music2) package { import flash.media.*; public dynamic class music2 extends Sound { } }//packageSection 20//music3 (music3) package { import flash.media.*; public dynamic class music3 extends Sound { } }//packageSection 21//music4 (music4) package { import flash.media.*; public dynamic class music4 extends Sound { } }//packageSection 22//music5 (music5) package { import flash.media.*; public dynamic class music5 extends Sound { } }//packageSection 23//music6 (music6) package { import flash.media.*; public dynamic class music6 extends Sound { } }//packageSection 24//powerdot_mc (powerdot_mc) package { import flash.display.*; public dynamic class powerdot_mc extends MovieClip { public function powerdot_mc(){ addFrameScript(0, frame1, 39, frame40, 79, frame80); } function frame80(){ stop(); } function frame1(){ stop(); } function frame40(){ this.gotoAndStop(1); } } }//packageSection 25//Preloader (Preloader) package { import flash.display.*; import flash.events.*; public class Preloader { private var stageH:Number; private var lb:Sprite; private var stageW:Number; private var myColors:Object; private var myParent; public function Preloader(_arg1:Sprite){ myParent = _arg1; prepareGame(); } private function prepareGame(){ stageW = 600; stageH = 450; myColors = new Object(); myColors.white = 0xFFFFFF; myColors.black = 0; myParent.loaderInfo.addEventListener(ProgressEvent.PROGRESS, loadProgress, false, 0, true); myParent.loaderInfo.addEventListener(Event.COMPLETE, loadDone, false, 0, true); lb = new Sprite(); lb.y = ((stageH / 2) - 5); lb.x = ((stageW / 2) - 50); myParent.addChild(lb); } private function loadProgress(_arg1:ProgressEvent):void{ var _local2:Number; _local2 = (_arg1.bytesLoaded / _arg1.bytesTotal); lb.graphics.clear(); lb.graphics.lineStyle(2, myColors.white, 1, true, "none", null, null, 3); lb.graphics.drawRect(0, 0, 100, 10); lb.graphics.beginFill(myColors.white); lb.graphics.drawRect(0, 0, (_local2 * 100), 10); } private function loadDone(_arg1:Event):void{ myParent.removeChild(lb); myParent.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadProgress); myParent.loaderInfo.removeEventListener(Event.COMPLETE, loadDone); myParent.gotoAndStop(2); } } }//packageSection 26//s_angry (s_angry) package { import flash.media.*; public dynamic class s_angry extends Sound { } }//packageSection 27//s_levelup (s_levelup) package { import flash.media.*; public dynamic class s_levelup extends Sound { } }//packageSection 28//s_line (s_line) package { import flash.media.*; public dynamic class s_line extends Sound { } }//packageSection 29//s_node (s_node) package { import flash.media.*; public dynamic class s_node extends Sound { } }//packageSection 30//s_pop (s_pop) package { import flash.media.*; public dynamic class s_pop extends Sound { } }//packageSection 31//s_power (s_power) package { import flash.media.*; public dynamic class s_power extends Sound { } }//packageSection 32//s_shoot (s_shoot) package { import flash.media.*; public dynamic class s_shoot extends Sound { } }//packageSection 33//s_wall (s_wall) package { import flash.media.*; public dynamic class s_wall extends Sound { } }//packageSection 34//score_mc (score_mc) package { import flash.display.*; import flash.text.*; public dynamic class score_mc extends MovieClip { public var txt:TextField; } }//package
Library Items
| Symbol 1 Graphic | Used by:3 | |
| Symbol 2 Graphic | Used by:3 | |
| Symbol 3 MovieClip {ball_mc} | Uses:1 2 | |
| Symbol 4 MovieClip {line_mc} | ||
| Symbol 5 Font | Used by:6 57 62 65 66 67 68 69 71 72 75 | |
| Symbol 6 EditableText | Uses:5 | Used by:7 |
| Symbol 7 MovieClip {score_mc} | Uses:6 | |
| Symbol 8 Graphic | Used by:13 | |
| Symbol 9 ShapeTweening | Used by:13 | |
| Symbol 10 Graphic | Used by:13 17 21 | |
| Symbol 11 ShapeTweening | Used by:13 | |
| Symbol 12 Graphic | Used by:13 17 21 | |
| Symbol 13 MovieClip {powerdot_mc} | Uses:8 9 10 11 12 | Used by:70 |
| Symbol 14 Graphic | Used by:17 | |
| Symbol 15 ShapeTweening | Used by:17 | |
| Symbol 16 ShapeTweening | Used by:17 | |
| Symbol 17 MovieClip {evildot_mc} | Uses:14 15 10 16 12 | Used by:70 |
| Symbol 18 Graphic | Used by:21 | |
| Symbol 19 ShapeTweening | Used by:21 | |
| Symbol 20 ShapeTweening | Used by:21 | |
| Symbol 21 MovieClip {dot_mc} | Uses:18 19 10 20 12 | Used by:70 |
| Symbol 22 MovieClip {empty_mc} | Used by:Timeline | |
| Symbol 23 Graphic | Used by:Timeline | |
| Symbol 24 Graphic | Used by:39 | |
| Symbol 25 Graphic | Used by:39 | |
| Symbol 26 Graphic | Used by:39 | |
| Symbol 27 Sound | Used by:39 | |
| Symbol 28 Sound | Used by:39 | |
| Symbol 29 Graphic | Used by:39 | |
| Symbol 30 Graphic | Used by:31 | |
| Symbol 31 MovieClip | Uses:30 | Used by:39 |
| Symbol 32 Sound | Used by:39 | |
| Symbol 33 Sound | Used by:39 | |
| Symbol 34 Sound | Used by:39 | |
| Symbol 35 Graphic | Used by:36 | |
| Symbol 36 Button | Uses:35 | Used by:39 |
| Symbol 37 Sound | Used by:39 | |
| Symbol 38 Sound | Used by:39 | |
| Symbol 39 MovieClip {taberinos_fla.ag_intro_mc_1} | Uses:24 25 26 27 28 29 31 32 33 34 36 37 38 | Used by:Timeline |
| Symbol 40 Sound {s_wall} | Used by:54 | |
| Symbol 41 Sound {s_shoot} | Used by:54 | |
| Symbol 42 Sound {s_power} | Used by:54 | |
| Symbol 43 Sound {s_pop} | Used by:54 | |
| Symbol 44 Sound {s_node} | Used by:54 | |
| Symbol 45 Sound {s_line} | Used by:54 | |
| Symbol 46 Sound {s_levelup} | Used by:54 | |
| Symbol 47 Sound {s_angry} | Used by:54 | |
| Symbol 48 Sound {music1} | Used by:54 | |
| Symbol 49 Sound {music2} | Used by:54 | |
| Symbol 50 Sound {music3} | Used by:54 | |
| Symbol 51 Sound {music4} | Used by:54 | |
| Symbol 52 Sound {music5} | Used by:54 | |
| Symbol 53 Sound {music6} | Used by:54 | |
| Symbol 54 MovieClip {taberinos_fla.sound_mc_4} | Uses:40 41 42 43 44 45 46 47 48 49 50 51 52 53 | Used by:Timeline |
| Symbol 55 Graphic | Used by:56 | |
| Symbol 56 MovieClip | Uses:55 | Used by:Timeline |
| Symbol 57 Text | Uses:5 | Used by:Timeline |
| Symbol 58 Font | Used by:59 60 73 74 76 77 79 | |
| Symbol 59 EditableText | Uses:58 | Used by:Timeline |
| Symbol 60 Text | Uses:58 | Used by:Timeline |
| Symbol 61 Graphic | Used by:70 | |
| Symbol 62 Text | Uses:5 | Used by:70 |
| Symbol 63 Graphic | Used by:64 | |
| Symbol 64 Button | Uses:63 | Used by:70 |
| Symbol 65 Text | Uses:5 | Used by:70 |
| Symbol 66 Text | Uses:5 | Used by:70 |
| Symbol 67 Text | Uses:5 | Used by:70 |
| Symbol 68 Text | Uses:5 | Used by:70 |
| Symbol 69 Text | Uses:5 | Used by:70 |
| Symbol 70 MovieClip {taberinos_fla.help_mc_7} | Uses:61 62 64 65 21 66 67 68 17 69 13 | Used by:Timeline |
| Symbol 71 EditableText | Uses:5 | Used by:78 |
| Symbol 72 EditableText | Uses:5 | Used by:78 |
| Symbol 73 Text | Uses:58 | Used by:78 |
| Symbol 74 Text | Uses:58 | Used by:78 |
| Symbol 75 EditableText | Uses:5 | Used by:78 |
| Symbol 76 Text | Uses:58 | Used by:78 |
| Symbol 77 Text | Uses:58 | Used by:78 |
| Symbol 78 MovieClip {taberinos_fla.txt_mc_12} | Uses:71 72 73 74 75 76 77 | Used by:Timeline |
| Symbol 79 EditableText | Uses:58 | Used by:Timeline |
| Symbol 80 Bitmap | Used by:81 | |
| Symbol 81 Graphic | Uses:80 | Used by:86 |
| Symbol 82 Graphic | Used by:83 | |
| Symbol 83 Button | Uses:82 | Used by:86 |
| Symbol 84 Bitmap | Used by:85 | |
| Symbol 85 Graphic | Uses:84 | Used by:86 |
| Symbol 86 MovieClip {taberinos_fla.soundonoff_mc_13} | Uses:81 83 85 | Used by:Timeline |
| Symbol 87 Graphic | Used by:Timeline | |
| Symbol 88 Graphic | Used by:89 | |
| Symbol 89 MovieClip {taberinos_fla.ads_mc_15} | Uses:88 | Used by:Timeline |
Instance Names
| "main_mc" | Frame 3 | Symbol 22 MovieClip {empty_mc} |
| "help_mc" | Frame 3 | Symbol 70 MovieClip {taberinos_fla.help_mc_7} |
| "txt_mc" | Frame 3 | Symbol 78 MovieClip {taberinos_fla.txt_mc_12} |
| "soundonoff_mc" | Frame 3 | Symbol 86 MovieClip {taberinos_fla.soundonoff_mc_13} |
| "ads_mc" | Frame 3 | Symbol 89 MovieClip {taberinos_fla.ads_mc_15} |
| "txt" | Symbol 7 MovieClip {score_mc} Frame 1 | Symbol 6 EditableText |
| "ag_but" | Symbol 39 MovieClip {taberinos_fla.ag_intro_mc_1} Frame 82 | Symbol 36 Button |
| "shots_txt" | Symbol 78 MovieClip {taberinos_fla.txt_mc_12} Frame 2 | Symbol 71 EditableText |
| "score_txt" | Symbol 78 MovieClip {taberinos_fla.txt_mc_12} Frame 2 | Symbol 72 EditableText |
| "lives_txt" | Symbol 78 MovieClip {taberinos_fla.txt_mc_12} Frame 2 | Symbol 75 EditableText |
| "soundonoff_but" | Symbol 86 MovieClip {taberinos_fla.soundonoff_mc_13} Frame 1 | Symbol 83 Button |
Special Tags
| FileAttributes (69) | Timeline Frame 1 | Access local files only, Metadata not present, AS3. |
| Protect (24) | Timeline Frame 1 | 0 bytes "" |
| ScriptLimits (65) | Timeline Frame 1 | MaxRecursionDepth: 256, ScriptTimeout: 2 seconds |
Labels
| "dead" | Symbol 13 MovieClip {powerdot_mc} Frame 41 |
| "dead" | Symbol 17 MovieClip {evildot_mc} Frame 41 |
| "dead" | Symbol 21 MovieClip {dot_mc} Frame 41 |
|
|