home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Diversos / Beez.swf / scripts / core / objects / Circle.as < prev    next >
Encoding:
Text File  |  2008-09-03  |  1.6 KB  |  55 lines

  1. package core.objects
  2. {
  3.    import Box2D.Common.Math.b2Vec2;
  4.    import caurina.transitions.Tweener;
  5.    import flash.display.Sprite;
  6.    import flash.geom.Point;
  7.    
  8.    public class Circle extends Ball
  9.    {
  10.        
  11.       
  12.       public function Circle(def:CircleDef)
  13.       {
  14.          super(def);
  15.       }
  16.       
  17.       override protected function createSkin() : Sprite
  18.       {
  19.          var SkinClass:Class = engine.assets.getAssetClass("CircleAsset");
  20.          var skin:Sprite = new SkinClass();
  21.          skin.width = skin.height = ballDef.r * 2;
  22.          engine.canvas.coinsContainer.addChild(skin);
  23.          return skin;
  24.       }
  25.       
  26.       private function animComplete(animSprite:Sprite) : void
  27.       {
  28.          animSprite.parent.removeChild(animSprite);
  29.       }
  30.       
  31.       public function collidePlayer() : void
  32.       {
  33.          isDead = true;
  34.          var animSkin:Sprite = createSkin();
  35.          var b2pos:b2Vec2 = body.GetPosition();
  36.          var pos:Point = new Point(b2pos.x * engine.m_physScale,b2pos.y * engine.m_physScale);
  37.          var w:Number = skin.width;
  38.          animSkin.x = pos.x;
  39.          animSkin.y = pos.y;
  40.          animSkin.width = w;
  41.          animSkin.height = w;
  42.          animSkin.rotation = body.GetAngle() * 180 / Math.PI;
  43.          Tweener.addTween(animSkin,{
  44.             "scaleX":animSkin.scaleX * 3,
  45.             "scaleY":animSkin.scaleY * 3,
  46.             "alpha":0,
  47.             "time":0.5,
  48.             "transition":"easeoutquad",
  49.             "onComplete":animComplete,
  50.             "onCompleteParams":[animSkin]
  51.          });
  52.       }
  53.    }
  54. }
  55.