我正在使用this Es6 Phaser boilerplate并且在那里,有一个名为Mushroom的Phaser.Sprite扩展名:
import Phaser from 'phaser'
export default class extends Phaser.Sprite {
constructor ({ game, x, y, asset }) {
super(game, x, y, asset)
this.game = game
this.anchor.setTo(0.5)
}
update () {
this.angle += 1
}
}
所以我尝试在Phaser.Text类中复制它,如下所示:
import Phaser from 'phaser'
export default class extends Phaser.Text {
constructor({game, x, y, text, style}){
super(game, x, y, text, style)
this.game = game
this.anchor.setTo(0.5)
}
}
然后在Game.js文件中调用它,就像在示例中一样:
this.texto = new Texto({
game: this,
x: 0,
y:0,
text:"hola mundo"
})
this.game.add.existing(this.texto)
但这是结果:
未捕获的TypeError:无法读取未定义的属性“解析”
如何正确扩展Phaser.Text或创建可重用的类?
我做错了什么?
谢谢!
答案 0 :(得分:1)
您是否将实际游戏对象传递给扩展班级?
如果您尝试更改
,该怎么办?this.texto = new Texto({
game: this.game,
x: 0,
y:0,
text:"hola mundo"
})
this.game.add.existing(this.texto)