Advertisement
Guest User

Untitled

a guest
Jun 8th, 2012
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package
  2. {
  3.     import flash.display.Sprite;
  4.     import flash.events.Event;
  5.     import flash.display.MovieClip;
  6.     import flash.display.Bitmap;
  7.     import flash.display.BitmapData;
  8.     import flash.geom.Matrix;
  9.     import flash.geom.Rectangle;
  10.    
  11.     public class Main extends Sprite
  12.     {
  13.         public var movieClip:MovieClip;
  14.         public var bitmapData:BitmapData
  15.         public var bitmap:Bitmap;
  16.         public var maxMCheight:Number = 0;
  17.         public var maxMCwidth:Number = 0;
  18.        
  19.         public function Main():void
  20.         {
  21.             if (stage) init();
  22.             else addEventListener(Event.ADDED_TO_STAGE, init);
  23.         }
  24.        
  25.         private function init(e:Event = null):void
  26.         {
  27.             removeEventListener(Event.ADDED_TO_STAGE, init);
  28.             addEventListener(Event.ENTER_FRAME, update);
  29.            
  30.            
  31.             // for comparison, this is what I want the result to look like
  32.             movieClip = new skeletonDeath();
  33.             movieClip.x = 200;
  34.             movieClip.y = 200;
  35.             addChild(movieClip);
  36.            
  37.             // and this it the problem child
  38.             bitmap = new Bitmap();
  39.             bitmap.x = 70;
  40.             bitmap.y = 300;
  41.             addChild(bitmap);
  42.            
  43.             for (var i:uint = 0; i < movieClip.totalFrames; i++)
  44.             {
  45.                 var tempBounds:Rectangle = movieClip.getBounds(movieClip);
  46.                 if (tempBounds.height > maxMCheight) maxMCheight = tempBounds.height;
  47.                 if (tempBounds.width > maxMCwidth) maxMCwidth = tempBounds.width;
  48.                 movieClip.nextFrame();
  49.             }
  50.            
  51.             movieClip.gotoAndPlay(1);
  52.         }
  53.        
  54.         private function update(e:Event):void
  55.         {
  56.             var bounds:Rectangle = movieClip.getBounds(movieClip);
  57.             bitmapData = new BitmapData(maxMCwidth, maxMCheight, true, 0x0);
  58.             bitmapData.draw(movieClip, new Matrix(1, 0, 0, 1, maxMCwidth - (bounds.x + bounds.width), maxMCheight - (bounds.y + bounds.height)));
  59.             bitmap.bitmapData = bitmapData;
  60.         }
  61.        
  62.     }
  63.    
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement