1. 程式人生 > >Egret滑鼠點選後產生一個子彈

Egret滑鼠點選後產生一個子彈

建立一個bullet類:

 class bullet extends egret.Sprite{
    public constructor(color,x,y,r){   //建構函式。
        super();  //繼承
        var bullet_obj=new egret.Shape();
        bullet_obj.graphics.beginFill(color);
        bullet_obj.graphics.drawCircle(x,y,r);
        bullet_obj.graphics.endFill();
        this.addChild(bullet_obj);
        this.bullet_move();   //每創建立一個bullet就移動
    }

    public bullet_move(){

//每重新整理一幀子彈向上移動

        this.addEventListener(egret.Event.ENTER_FRAME,()=>{
            this.y-=2;
        },this);
    }

}

在建立遊戲場景場景中寫如下程式碼:   

    bullet1:bullet;
    private createGameScene() {
        //新增點選事件,點選滑鼠後在該位置產生一個子彈。evt.localX,evt.localY為滑鼠的座標
        this.stage.$addListener(egret.TouchEvent.TOUCH_TAP,(evt:egret.TouchEvent)=>{
            this.bullet1=new bullet('0xFF0000',evt.localX,evt.localY,'20');
            this.addChild(this.bullet1);
        },this);        
    }