Estoy importando una imagen de una hoja de sprites json, que funciona bien, sin embargo, quiero que el sprite se escale una vez que esté en el juego. Usando el código a continuación, aparece el error en la consola "Error de tipo no detectado: avión. La escala no es una función" .
const config = { type: Phaser.AUTO, width: 800, height: 600, scene: { preload: preload, create: create } }; const game = new Phaser.Game(config); function preload () { this.load.image('background', 'assets/1.jpg'); this.load.multiatlas('aircraft', 'assets/texture.json', 'assets'); } function create () { const background = this.add.image(800, 600, 'background'); const plane = this.add.sprite(200, 200, 'aircraft', 'Glider2.png'); plane.scale(0.1, 0.1); }El problema / error se produce porque la función que debe usar es setScale not scale (enlace a la documentación ).
El código debería verse así:
... const plane = this.add.sprite(200, 200, 'aircraft', 'Glider2.png'); plane.setScale(0.1); ... Por cierto: si la escala tiene el mismo valor en los ejes x e y , puede omitir el segundo parámetro.