In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

三次元の勉強中

-- welcome to wonderfl --
wonderflとは、
ブラウザのみでFlashをつくることのできるサービス
サイトにあるフォームにActionscript3のコードを書き、
サーバサイドでコンパイルを行います。
コンパイル結果がページ上に自動的に表示されるので、
完成したFlashをリアルタイムに見ながらコードを書くことができます。
まずは、Fork ボタンをクリックして、このソースを改造してみよう。
// forked from mash's wonderfl KeyVisual V.4.ja
//
//              -- welcome to wonderfl --
//
// wonderflとは、
//         ブラウザのみでFlashをつくることのできるサービス
//
// サイトにあるフォームにActionscript3のコードを書き、
// サーバサイドでコンパイルを行います。
// コンパイル結果がページ上に自動的に表示されるので、
// 完成したFlashをリアルタイムに見ながらコードを書くことができます。
//
// まずは、Fork ボタンをクリックして、このソースを改造してみよう。
//
package {

    import flash.display.Sprite;
    import flash.display.Loader;
    import flash.display.MovieClip;
    import flash.events.IEventDispatcher;
    import flash.events.IOErrorEvent;
    import flash.events.HTTPStatusEvent;
    import flash.events.Event;
    import flash.net.URLRequest;
    import flash.geom.*;

    [SWF(backgroundColor="#FFFFFF", frameRate=10)]
    public class FlashTest extends Sprite {

        public function FlashTest() {         
            var loader :Loader = new Loader;
            var url :String = "/swf/demo_ja.swf";
            loader.load( new URLRequest(url) );
            addListeners( loader.contentLoaderInfo );
            addChild( loader );
            loader.scaleX = 1;
            loader.x = -stage.stageWidth ;
            loader.y = -stage.stageHeight ;
   
            var enLoader :Loader = new Loader;
            var enUrl :String = "/swf/demo_en.swf";
            enLoader.load( new URLRequest(enUrl) );
            addChild( enLoader );
            enLoader.x = stage.stageWidth ;
            enLoader.y = -stage.stageHeight ;
            
            z = 1000;
            addEventListener(Event.ENTER_FRAME , enterFrameHandler);
        }
        
        private function enterFrameHandler(event:Event):void
        {
            var m:Matrix3D = new Matrix3D();
            var hw:Number = stage.stageWidth / 2;
            var hh:Number = stage.stageHeight / 2;
            m.prependTranslation(hw,hh,0);
            m.prependRotation(0.2,Vector3D.Y_AXIS);
            m.prependRotation(0.2,Vector3D.X_AXIS);
            m.prependRotation(0.2,Vector3D.Z_AXIS);
            m.prependTranslation(-hw,-hh,0);
            transform.matrix3D.prepend(m);
        }

        private function addListeners( d :IEventDispatcher ) :void {
            // do nothing
            d.addEventListener( IOErrorEvent.IO_ERROR, function(e :IOErrorEvent) :void {} );
            d.addEventListener( HTTPStatusEvent.HTTP_STATUS, function(e :HTTPStatusEvent) :void {} );
        }
    }
}