扩展Phaser.Text类

时间:2017-01-11 13:41:38

标签: javascript extends phaser-framework

我正在使用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或创建可重用的类?

我做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

您是否将实际游戏对象传递给扩展班级?

如果您尝试更改

,该怎么办?
this.texto = new Texto({
  game: this.game,
  x: 0,
  y:0,
  text:"hola mundo"
})

this.game.add.existing(this.texto)