package { import com.adobe.viewsource.ViewSource; import com.signalsondisplay.blog.BlogLaunchButton; import com.signalsondisplay.blog.BlogSoundLoader; import flash.display.*; import flash.events.Event; import flash.events.MouseEvent; import flash.net.URLRequest; import fr.kikko.SystemTracker; [SWF(backgroundColor="#000", frameRate=30)] public class Avoid3DLight extends Sprite { private var _soundLoader:BlogSoundLoader; private var _launch:BlogLaunchButton; public function Avoid3DLight() { stage.align = StageAlign.TOP_LEFT; stage.scaleMode = StageScaleMode.NO_SCALE; ViewSource.addMenuItem( this, "srcview/index.html" ); SystemTracker.init( this ); /** * check out russian circles! * http://www.myspace.com/russiancircles */ _soundLoader = new BlogSoundLoader( new URLRequest( "http://www.signalsondisplay.com/blog/wp-content/uploads/as3/3d/sound_plane/harper_lewis.mp3" ) ); _soundLoader.addEventListener( Event.COMPLETE, soundLoadComplete ); addChild( _soundLoader ); } private function soundLoadComplete( e:Event ):void { _soundLoader.removeEventListener( Event.COMPLETE, soundLoadComplete ); _launch = new BlogLaunchButton( this ); _launch.addEventListener( MouseEvent.CLICK, init ); } private function init( e:MouseEvent ):void { _launch.removeEventListener( MouseEvent.CLICK, init ); removeChild( _launch ); var ui:UI = new UI(); ui.x = 10; ui.y = 100; addChild( ui ); var plane:LightPlane = new LightPlane(); plane.sound = _soundLoader.sound; plane.ui = ui; addChild( plane ); } } }