※現在、「wonderfl build flash online」求人コンテンツ制作に関してのアンケートを実施中です!みなさまのお力添えを頂いて、続々とアンケート結果が集まっていますが、まだまだ募集しております。ご協力のほど、どうぞよろしくお願いいたします!

wonderfl運営事務局
→アンケートページ(※ログインしてからお答えいただけるようになっています。)

 notice: Flash editor updated! Join the development! Thanks to MiniBuilder


TALK
ql :)
at 2009/11/12 05:13:32 by
FORKED
  1. // forked from makc3d's Long Cat Is Long
  2. package  {
  3.     import flash.display.BitmapData;
  4.     import flash.display.Loader;
  5.     import flash.display.Sprite;
  6.     import flash.events.Event;
  7.     import flash.events.ProgressEvent;
  8.     import flash.geom.Matrix;
  9.     import flash.net.URLRequest;
  10.     import flash.system.LoaderContext;
  11.     /**
  12.      * Thanks to flash player evolution original long cat swf
  13.      * no longer works :(
  14.      * 
  15.      * Original long cat was 300 * 59 = 17700 pixels, this one
  16.      * is 2528 * 7 = 17696, I decided to crop top 4 pixels.
  17.      */
  18.     public class LongCat extends Sprite {
  19.         public var parts:Vector.<String>;
  20.         public var cat:Vector.<Loader>;
  21.         public var count:int;
  22.         public var line:int;
  23.         public function LongCat () {
  24.             parts = Vector.<String> ([
  25.                 "http://assets.wonderfl.net/images/related_images/f/f5/f5a3/f5a3cc8a864ae7d6033630c4a798b8045f4224f9",
  26.                 "http://assets.wonderfl.net/images/related_images/a/aa/aaa2/aaa2f938299537c890c6bf5454c76f5fdea40dc0",
  27.                 "http://assets.wonderfl.net/images/related_images/9/9d/9dfb/9dfb3734db89044ef6409774afca36399115a0fd",
  28.                 "http://assets.wonderfl.net/images/related_images/e/ec/ecf9/ecf91cbab43186408d90f2ae55df586519979aa7",
  29.                 "http://assets.wonderfl.net/images/related_images/0/02/02d7/02d75f7af831627d494db229a707f93f78debcd2",
  30.                 "http://assets.wonderfl.net/images/related_images/c/c0/c0e7/c0e79a0f5ca24af0d308ade29b8950c540522fd5",
  31.                 "http://assets.wonderfl.net/images/related_images/b/b1/b16d/b16de6b47d148f7d7e7c4d818b70d9b7ed13cacc"
  32.             ]);
  33.             cat = new Vector.<Loader> (parts.length);
  34.             for (var i:int = 0; i < cat.length; i++) {
  35.                 cat [i] = new Loader;
  36.                 cat [i].contentLoaderInfo.addEventListener (ProgressEvent.PROGRESS, bar);
  37.                 cat [i].contentLoaderInfo.addEventListener (Event.COMPLETE, done);
  38.                 cat [i].load (new URLRequest (parts [i]), new LoaderContext (true));
  39.             }
  40.             count = 0; line = 1e5;
  41.         }
  42.         public function bar (e:ProgressEvent):void {
  43.             var loaded:Number = 0, total:Number = 0;
  44.             for (var i:int = 0; i < cat.length; i++) {
  45.                 loaded += cat [i].contentLoaderInfo.bytesLoaded;
  46.                 total += (cat[i].contentLoaderInfo.bytesTotal > 0) ?
  47.                      cat[i].contentLoaderInfo.bytesTotal : 150000;
  48.             }
  49.             graphics.clear ();
  50.             graphics.lineStyle (2);
  51.             graphics.drawRect (8022030434);
  52.             graphics.lineStyle ();
  53.             graphics.beginFill (0);
  54.             graphics.drawRect (82222300 * loaded / total, 30);
  55.             graphics.endFill ();
  56.         }
  57.         public function done (e:Event):void {
  58.             count++; if (count == cat.length) {
  59.                 addEventListener (Event.ENTER_FRAME, loop);
  60.             }
  61.         }
  62.         public function loop (e:Event):void {
  63.             line = line + 400;
  64.             line = Math.min (17696 - 465, Math.max (0, line));
  65.             var i:int = line / 2528, h:int = 2528 - line % 2528;
  66.             var bi:BitmapData = BitmapData (cat [i].content ["bitmapData"]);
  67.             var mi:Matrix = new Matrix (100182, h);
  68.             graphics.clear ();
  69.             graphics.beginBitmapFill (bi, mi);
  70.             graphics.drawRect (820300, Math.min (h, 465));
  71.             graphics.endFill ();
  72.             if (h < 465) {
  73.                 bi = BitmapData (cat [i + 1].content ["bitmapData"]);
  74.                 graphics.beginBitmapFill (bi, mi);
  75.                 graphics.drawRect (82, h, 300465 - h);
  76.                 graphics.endFill ();
  77.             }
  78.         }
  79.     }
  80. }
noswf
Get Adobe Flash Player