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

flash on 2010-8-10

...
@author Alex Lama
Get Adobe Flash player
by virtualex 10 Aug 2010
    Embed
/**
 * Copyright virtualex ( http://wonderfl.net/user/virtualex )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/1xvX
 */

package{
 
    import flash.events.Event;
    import flash.display.Sprite;
    import flash.events.MouseEvent; 
    
    import org.papervision3d.materials.ColorMaterial;
    import org.papervision3d.materials.special.CompositeMaterial; 
    import org.papervision3d.materials.WireframeMaterial;
    import org.papervision3d.objects.primitives.Cube;
    import org.papervision3d.view.BasicView;
    import org.papervision3d.materials.utils.MaterialsList;
    import org.papervision3d.materials.MovieMaterial;
    
    

     /**
     * ...
     * @author Alex Lama
     */

    public class Main extends BasicView {

        protected var cube:Cube;

        protected var mat1:ColorMaterial;
        protected var interactiveMats:Array;
        protected var interactiveColors:Array;
        protected var cubeArray:Array;
        protected var cubeRandArray:Array;
        protected var materialsList:MaterialsList;

 
        protected var rightBtn1:Sprite;
        protected var leftBtn1:Sprite;
        protected var rightBtn2:Sprite;
        protected var leftBtn2:Sprite;
        protected var rightBtn3:Sprite;
        protected var leftBtn3:Sprite;


        protected var time:Number;
                             
        public function Main():void {
  
          //super();
          super(640,480,true, false,"Free")   
          //super(640,480,true, false,"Free")     
          //this.parent.camera.cameraType = "Free";
          //camera.cameraType = "Free"; 
          camera.zoom = 3.5;         
          camera.focus = 160;   
          camera.z = -1000;  
          createButtons()  
          //camera
                                                  
          time = 0; 
          interactiveMats         =   ["front", "back", "left", "right", "bottom", "top"]; 
          interactiveColors         = [0x111111, 0x333333, 0x555555, 0x777777, 0x999999, 0xAAAAAA]; 
         
          cubeArray = new Array(100);
          cubeRandArray = new Array(100); 
          var arr:int = 0;
              for (var i:int = -5; i <5; i++) {
                 for (var j:int = 0; j <10; j++) { 
                 
                     cube =  makeCube(200, 200,20);          
                     cube.y = -400;
                     cube.x = i *220;                    
                     cube.z = j *220; 
                     cubeArray[arr] = cube;  
                     cubeRandArray[arr] = Math.random() * 100;
                     scene.addChild(cube);       
                     arr++; 
                 }                  
              }

            startRendering();
  
        }
         
             
         public function makeCube(w:Number,h:Number,d:Number):Cube{
             
                 var materialsList:MaterialsList = new MaterialsList(); 
                 for (var i:int = 0; i <interactiveMats.length; i++) {
                 
                     var colorM:ColorMaterial = new ColorMaterial(interactiveColors[i]); 
                      materialsList.addMaterial(colorM,interactiveMats[i]); 

                  }
   
               var cube:Cube = new Cube(materialsList, w,h,d);                  
               return cube;            
         } 
         
 

        protected function createButtons():void  {

            //Create Buttons

            rightBtn1 = createButton();
            leftBtn1 = createButton();
            rightBtn2 = createButton();
            leftBtn2 = createButton();
            rightBtn3 = createButton();
            leftBtn3 = createButton();
               
            addChild(leftBtn1);
            addChild(rightBtn1);
            addChild(leftBtn2);
            addChild(rightBtn2);
            addChild(leftBtn3);
            addChild(rightBtn3);
           
            //Add button listeners
 // RIGHT_MOUSE_DOWN :
            rightBtn1.buttonMode = true;
            leftBtn1.buttonMode = true;
            rightBtn1.addEventListener(MouseEvent.MOUSE_OVER, buttonClick);
            leftBtn1.addEventListener(MouseEvent.MOUSE_OVER, buttonClick);

            rightBtn2.buttonMode = true;
            leftBtn2.buttonMode = true;
            rightBtn2.addEventListener(MouseEvent.MOUSE_OVER, buttonClick);
            leftBtn2.addEventListener(MouseEvent.MOUSE_OVER, buttonClick);

            rightBtn3.buttonMode = true; 
            leftBtn3.buttonMode = true;  
            rightBtn3.addEventListener(MouseEvent.MOUSE_OVER, buttonClick);
            leftBtn3.addEventListener(MouseEvent.MOUSE_OVER, buttonClick);
                    
            //Place buttons on stage

            rightBtn1.x    = stage.stageWidth - 120;
            leftBtn1.x       = 100;
            rightBtn1.y    =  stage.stageHeight / 2;
            leftBtn1.y       =  (stage.stageHeight / 2) + 20;
            leftBtn1.rotation    = 180;

            rightBtn2.x    = stage.stageWidth - 120;
            leftBtn2.x       = 100;
            rightBtn2.y    =  stage.stageHeight / 3; 
            leftBtn2.y       =  (stage.stageHeight / 3) + 20;
            leftBtn2.rotation    = 180;

            rightBtn3.x    = stage.stageWidth - 120;
            leftBtn3.x       = 100; 
            rightBtn3.y    =  (stage.stageHeight*2) / 3;
            leftBtn3.y       =  ((stage.stageHeight*2) / 3) + 20;
            leftBtn3.rotation    = 180;
 
        }
         
        protected function createButton():Sprite{

            var btn:Sprite = new Sprite();           
            btn.graphics.beginFill(0x333333);
            btn.graphics.moveTo(0, 0);
            btn.graphics.lineTo(0, 20);
            btn.graphics.lineTo(10, 10);
            btn.graphics.lineTo(0, 0);
            btn.graphics.endFill();
            return btn;
        }

        protected function buttonClick(evt:MouseEvent):void {
            switch (evt.target) {
                case rightBtn1:
                camera.zoom --;
                break;          
                case leftBtn1:  
                camera.zoom ++;
                break;
                case rightBtn2:
                camera.z -=10;
                break;         
                case leftBtn2:   
                camera.z +=10;
                break;
                case rightBtn3:
                camera.focus --;
                break;          
                case leftBtn3:  
                camera.focus ++; 
                break;
                                
            } 
            //rotate();
        }

               
        override protected function onRenderTick(event:Event = null):void       {
             
            super.onRenderTick(event);
                       
                    for (var i:int = 0; i <100; i++) {                           
                       cubeArray[i].y = (Math.sin((time+cubeRandArray[i])/10)*5)-350 ; 
                   }
     
            time ++; 
                  

        }

    }

}