第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Phaser 3 為玩家創(chuàng)建類

Phaser 3 為玩家創(chuàng)建類

紫衣仙女 2022-10-21 10:35:39
我正在使用 javascript 在 Phaser 3 中工作,并注意到我將所有代碼都放在一個類(scene1)中,該類已經(jīng)擴展了 Phaser.Scene我想知道如何為我的播放器創(chuàng)建一個類并在我的 scene1 類中使用它來創(chuàng)建它的一個實例,這將有助于清理我的代碼,如下所示:this.player1 = this.add.sprite(100, 100, "playerImg", 0)this.player1 = this.add.sprite(playerObj.x, playerObj.y, playerObj.image, 0)
查看完整描述

1 回答

?
呼如林

TA貢獻1798條經(jīng)驗 獲得超3個贊

選項1:


您可以從您想要的任何物理類型創(chuàng)建擴展 .Sprite 類的播放器類,如下所示:


不要忘記在構(gòu)造函數(shù)中傳遞場景?。?!


//player.js


class Player extends Phaser.Physics.Arcade.Sprite {

    constructor(scene, x, y) {

        super(scene, x, y, 'Texture', 'Frame'); // The frame is optional 


    }

}

當(dāng)您在實際場景文件中調(diào)用它時,將this其作為參數(shù)傳遞,以將播放器添加到該實際場景中。


//scene.js

...

player = this.physics.add.existing(new Player(this, 100, 100));

看看文檔https://photonstorm.github.io/phaser3-docs/Phaser.Physics.Arcade.Sprite.html


選項 2:


另一種方法是擴展到 GameObjects.Sprite,如下所示:


//Player.js


class Player extends Phaser.GameObjects.Sprite{


    constructor(scene, x, y){


        super(scene, x, y, 'Texture', 'Frame'); // The frame is optional 


        this.scene.add.existing(this);

    }

}



調(diào)用傳遞場景,x 和 y 作為參數(shù)


//Scene.js

...

player = this.scene.add.existing(new Player(this, 100, 100));

看看文檔https://photonstorm.github.io/phaser3-docs/Phaser.GameObjects.Sprite.html


查看完整回答
反對 回復(fù) 2022-10-21
  • 1 回答
  • 0 關(guān)注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號