forked from: forked from: move line + play sound sample

by fukt
♥0 | Line 59 | Modified 2010-10-14 07:59:40 | MIT License
play

ActionScript3 source code

/**
 * Copyright fukt ( http://wonderfl.net/user/fukt )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/75Bs
 */

// forked from taketani's forked from: move line + play sound sample
// forked from dotimpact's move line + play sound sample
// forked from taketani's forked from: forked from: forked from: flash on 2010-1-23
// forked from taketani's forked from: forked from: flash on 2010-1-23
package {
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.events.*; 
    import flash.net.*;
    import flash.media.Sound;
    
    [SWF(width="465", height="465", backgroundColor="#ffffff", frameRate=30)]
    public class TenorionTest extends Sprite {
        
        private var Source:Array = [
            new URLRequest("http://dl.dropbox.com/u/4278005/b.mp3"),
            new URLRequest("http://dl.dropbox.com/u/4278005/t.mp3"),
            new URLRequest("http://dl.dropbox.com/u/4278005/psh.mp3")
        ];
        private var Se:Array = new Array(Source.length);
        private var Pos:Array = new Array();
        private var Bar:Sprite = new Sprite();
        
        public function TenorionTest() {
            
            for (var i:int = 0 ; i < Se.length ; i++ ) {
                Se[i] = new Sound(Source[i]);
            }
            
            Bar.graphics.lineStyle(1, 0xff0000);
            Bar.graphics.moveTo(0,0);
            Bar.graphics.lineTo(0, 465);
            addChild(Bar);
            
            stage.addEventListener(MouseEvent.CLICK, onClick); 
            stage.addEventListener(Event.ENTER_FRAME, draw); 
        }
        
        private function draw(e:Event):void {
            Bar.x++;
            if(Bar.x > 465) Bar.x = 0;
            
            for(var i:int = 0 ; i < Pos.length ; i++) {
                var pos:Array = Pos[i];
                if(Bar.x == int(pos[0])) {
                    if(pos[1] > 0 && pos[1] <= 200) {
                        Se[0].play();
                    } else if(pos[1] > 200 && pos[1] <= 300) {
                        Se[1].play();                        
                    } else {
                        Se[2].play();
                    }
                }
            }
            
        }
        
        private function onClick(e:MouseEvent):void {
            Pos.push([e.stageX, e.stageY]);
            
            var nR:int = Math.ceil(Math.random() * 20) + 10;
            var color:int = Math.floor(Math.random() * 0xffffff);
            var oneCircle:MovieClip = new DrawCircle1(e.stageX, e.stageY, nR, color);
            addChild(oneCircle);
        }
    }
}

import flash.display.MovieClip;
class DrawCircle1 extends MovieClip {
    public function DrawCircle1(nX:int, nY:int, nR:int, color:int) {
        graphics.lineStyle(2, color);
        graphics.drawCircle(nX, nY, nR); 
    }  }