繁体   English   中英

扩展Phaser.Text类

[英]Extend Phaser.Text class

我正在使用此Es6 Phaser样板 ,其中有一个名为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或创建可重用的类?

我究竟做错了什么?

谢谢!

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

如果您尝试更改怎么办

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM