home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Puzzle / filler.swf / scripts / org / cove / ape / Composite.as < prev    next >
Encoding:
Text File  |  2008-09-02  |  2.0 KB  |  76 lines

  1. package org.cove.ape
  2. {
  3.    public class Composite extends AbstractCollection
  4.    {
  5.        
  6.       
  7.       private var delta:Vector;
  8.       
  9.       public function Composite()
  10.       {
  11.          super();
  12.          delta = new Vector();
  13.       }
  14.       
  15.       private function getRelativeAngle(param1:Vector, param2:Vector) : Number
  16.       {
  17.          delta.setTo(param2.x - param1.x,param2.y - param1.y);
  18.          return Math.atan2(delta.y,delta.x);
  19.       }
  20.       
  21.       public function rotateByRadian(param1:Number, param2:Vector) : void
  22.       {
  23.          var _loc3_:AbstractParticle = null;
  24.          var _loc4_:Array = null;
  25.          var _loc5_:int = 0;
  26.          var _loc6_:int = 0;
  27.          var _loc7_:Number = NaN;
  28.          var _loc8_:Number = NaN;
  29.          _loc5_ = int((_loc4_ = particles).length);
  30.          _loc6_ = 0;
  31.          while(_loc6_ < _loc5_)
  32.          {
  33.             _loc3_ = _loc4_[_loc6_];
  34.             _loc7_ = _loc3_.center.distance(param2);
  35.             _loc8_ = getRelativeAngle(param2,_loc3_.center) + param1;
  36.             _loc3_.px = Math.cos(_loc8_) * _loc7_ + param2.x;
  37.             _loc3_.py = Math.sin(_loc8_) * _loc7_ + param2.y;
  38.             _loc6_++;
  39.          }
  40.       }
  41.       
  42.       public function rotateByAngle(param1:Number, param2:Vector) : void
  43.       {
  44.          var _loc3_:Number = NaN;
  45.          _loc3_ = param1 * MathUtil.PI_OVER_ONE_EIGHTY;
  46.          rotateByRadian(_loc3_,param2);
  47.       }
  48.       
  49.       public function set fixed(param1:Boolean) : void
  50.       {
  51.          var _loc2_:int = 0;
  52.          _loc2_ = 0;
  53.          while(_loc2_ < particles.length)
  54.          {
  55.             particles[_loc2_].fixed = param1;
  56.             _loc2_++;
  57.          }
  58.       }
  59.       
  60.       public function get fixed() : Boolean
  61.       {
  62.          var _loc1_:int = 0;
  63.          _loc1_ = 0;
  64.          while(_loc1_ < particles.length)
  65.          {
  66.             if(!particles[_loc1_].fixed)
  67.             {
  68.                return false;
  69.             }
  70.             _loc1_++;
  71.          }
  72.          return true;
  73.       }
  74.    }
  75. }
  76.