• AS3 マウスクリックでフレーム遷移、マウスオーバーでフレーム再生
    back3.addEventListener(MouseEvent.CLICK, onClickBack3);
    function onClickBack3(event) {
    	gotoAndStop("step2");
    }
    back3.addEventListener(MouseEvent.MOUSE_OVER, onOverBack3);
    function onOverBack3(event) {
    	back3.gotoAndPlay(1) ;
    }
    back3.addEventListener(MouseEvent.MOUSE_OUT, onOutBack3);
    function onOutBack3(event) {
    	back3.gotoAndStop(0) ;
    }
     
    stop() ;
  • AS3 シューティングゲームひな型
    var left : Boolean = false;
    var right : Boolean = false;
    var up : Boolean = false;
    var down : Boolean = false;
     
    var spase : Boolean = false;
     
    //stage.addChild(sprite);
     
    // キーボードが押されたときに呼び出されるイベント
    stage.addEventListener(KeyboardEvent.KEY_DOWN, KeyDownFunc);
     
    function KeyDownFunc(event:KeyboardEvent):void{
        if(event.keyCode == 37){
            left = true;	
        }
     
    	if(event.keyCode == 39){
            right = true;
        }
     
    	if(event.keyCode == 38){
            up = true;
        }
     
    	if(event.keyCode == 40){
    		down = true;
        }
        if(event.keyCode == 32 && spase == false){
    	spase = false;
    	var sprite = new Sprite();
    	var graphic : Graphics = sprite.graphics;
    	graphic.lineStyle (2, 0xFF0000, 1.0);
    	var maru_x = maru.x;
    	var maru_y = maru.y;
    	graphic.moveTo (maru_x,maru_y);
    	graphic.lineTo (maru_x+10, maru_y);
    	sprite.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
    	stage.addChild(sprite);
    	function enterFrameHandler(event:Event):void {
         	 //座標を更新
    		var t:Sprite = event.target as Sprite;
    		if(t.x<=stage.stageWidth) {
    			t.x+=15;
    		} else{
    			spase = false;
    			t.removeEventListener(Event.ENTER_FRAME,enterFrameHandler) ;
    			stage.removeChild(t);
     
    	  	}
    	}	
        }	
    }
     
    // キーボードが離されたときに呼び出されるイベント
    stage.addEventListener(KeyboardEvent.KEY_UP, KeyUpFunc);
    function KeyUpFunc(event:KeyboardEvent):void{
    	if(event.keyCode == 37){
    		left = false;
    	}
     
    	if(event.keyCode == 39){
    		right = false;
    	}
     
    	if(event.keyCode == 38){
    		up = false;
    	}
     
    	if(event.keyCode == 40){
    		down = false;
    	}
    }
     
    // 非アクティブ時に呼び出されるイベント
    stage.addEventListener(Event.DEACTIVATE, DeActiveFunc);
    function DeActiveFunc(event:Event):void{
        left = false;
    	right = false;
    	up = false;
    	down = false;
    }
     
     
    // 毎フレーム実行されるイベント
    stage.addEventListener(Event.ENTER_FRAME, function(event:Event):void{
        if(left && 20 <= maru.x){
    		maru.x -= 10;
    	}
     
    	if(right && stage.stageWidth-23 >= maru.x){
    		maru.x += 10;
    	}
     
    	if(up && 15 <= maru.y){
    		maru.y -= 10;
    	}
     
    	if(down && stage.stageHeight-15 >= maru.y){
    		maru.y += 10;
    	}
    });
最終更新:2011年07月12日 12:28