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

変数弄れる、泡っぽい何か

マウスをドラッグすると何か出ます

左上の数値を変更すると、或る程度動きに変化をつけられます

あんまり変な数字入れると、挙動がおかしくなる...かも

一番下のsize基準値以外は0.1も変えたら劇的に(?)変わると思う


TextFieldとかメンドクサイ...

オーサリングできないの辛いね
何か方法あるのかな?

途中から自分であーだこーだと内容書き換えたせいでコード汚いです

そのうちコメント解説打ち込むかも

ps.配列から変数にアクセスできないんだっけ?そのせいで20分くらい迷ってた
Get Adobe Flash player
by moyashi 06 May 2011
/**
 * Copyright moyashi ( http://wonderfl.net/user/moyashi )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/aB47
 */

/*

マウスをドラッグすると何か出ます

左上の数値を変更すると、或る程度動きに変化をつけられます

あんまり変な数字入れると、挙動がおかしくなる...かも

一番下のsize基準値以外は0.1も変えたら劇的に(?)変わると思う


TextFieldとかメンドクサイ...

オーサリングできないの辛いね
何か方法あるのかな?

途中から自分であーだこーだと内容書き換えたせいでコード汚いです

*/


package {
    import flash.display.*
    import flash.events.*
    import flash.text.*
    
    public class FlashTest extends Sprite {
        
        private  var i:int
        
        private var txtlist1:Array=["移動速度 (0~1)","透過速度 (0~1)","変化速度","size基準値"]
        private var txtlist2:Array=["0.98","0.05","1.01","10"]
        private var itxtlist:Array=[]
        
        private var StateList:Array=[0.98,0.05,1.01,10]
                
        public function FlashTest() {
                    
            for(i=0; i<4; i++){
                var txt:TextField=new TextField()
                txt.autoSize=TextFieldAutoSize.LEFT
                
                txt.x=10
                txt.y=10+i*20
                
                txt.text=txtlist1[i]
                addChild(txt)
            }
            
            for(i=0; i<4; i++){
                var itxt:TextField=new TextField()
                itxt.width=30
                itxt.height=20
                itxt.border=true
                itxt.type=TextFieldType.INPUT
                
                itxt.x=120
                itxt.y=10+i*20
                
                itxt.text=txtlist2[i]            
                addChild(itxt)
                
                itxtlist.push(itxt)
                
                itxt.addEventListener(FocusEvent.KEY_FOCUS_CHANGE,onKeyChange)
                itxt.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE,onMouseChange)
                itxt.addEventListener(KeyboardEvent.KEY_DOWN,onKeyDown)
            }
            
            stage.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown)
            stage.addEventListener(MouseEvent.MOUSE_UP,onMouseUp)
        }
        
        private function onKeyChange(e:FocusEvent):void{
            setValue()
            
        }
        
        private function onMouseChange(e:FocusEvent):void{
            setValue()
        }
        
        private function onKeyDown(e:KeyboardEvent):void{
            if(e.keyCode == 13){
                setValue()
            }
        }
        
        private function setValue():void{
            for(i=0; i<4; i++){
                if(Number(itxtlist[i].text)){
                    StateList[i]=Number(itxtlist[i].text)
                }
            }
        }
        
        private function onMouseDown(e:MouseEvent):void{
            stage.addEventListener(Event.ENTER_FRAME,onCreate)
        }
        
        private function onMouseUp(e:MouseEvent):void{
            if(stage.hasEventListener(Event.ENTER_FRAME)){
                stage.removeEventListener(Event.ENTER_FRAME,onCreate)
            }
        }
        
        private function onCreate(e:Event):void{
            for(i=0; i<6; i++){
                var chip:BALL=new BALL(StateList[0],StateList[1],StateList[2],StateList[3])
              
                chip.x = mouseX
                chip.y = mouseY
                
                chip.vx = Math.random()*10-Math.random()*10
                chip.vy = Math.random()*10-Math.random()*10
                
                addChild(chip)
            }
        }

    }
}
    
import flash.display.*
import flash.events.*
    
class BALL extends Sprite{
     public var vx:Number
     public var vy:Number
     public var n:Number
     public var al:Number
     public var ran:Number
     public var si:Number     
        
     private var sp:Sprite
        
     public function BALL(Num1:Number,Num2:Number,Num3:Number,Num4:Number){
         n=Num1
         al=Num2
         ran=Num3
         si=Num4
            
            
         sp=new Sprite()
         sp.graphics.beginFill(0x777777+0x888888*Math.random())
         sp.graphics.drawCircle(0,0,si*Math.random())
         sp.graphics.endFill()
            
         addChild(sp)
            
         sp.addEventListener(Event.ENTER_FRAME,onMOVE)
     }
        
     private function onMOVE(e:Event):void{
         sp.x += vx
         sp.y += vy
           
         vx *= n
         vy *= n
            
         sp.scaleX *= ran
         sp.scaleY *= ran
            
         sp.alpha -= al
            
         if(sp.alpha<=0){
             sp.removeEventListener(Event.ENTER_FRAME,onMOVE)
             removeChild(sp)
         }
     }
}