О чем этот пример
Выравнивание игровых объектов — одна из частых задач при создании интерфейсов, меню или компоновки сцены. В этом примере показано, как легко и точно центрировать спрайты и изображения относительно друг друга или области экрана, используя встроенные методы Phaser. Это избавит вас от ручных расчетов координат.
Версия Phaser: код и демо в этой статье рассчитаны на Phaser 3.90.0.
Живой запуск
Ниже встроен рабочий билд примера. Оригинальный источник: GitHub.
Исходный код
class Example extends Phaser.Scene
{
constructor ()
{
super();
}
preload ()
{
this.load.setBaseURL('https://raw.githubusercontent.com/phaserjs/examples/master/public/');
this.load.image('pic', 'assets/pics/barbarian-loading.png');
this.load.image('block', 'assets/sprites/block.png');
}
create ()
{
const pic = this.add.image(0, 0, 'pic');
const block = this.add.image(0, 0, 'block');
// Center the picture in the game
Phaser.Display.Align.In.Center(pic, this.add.zone(400, 300, 800, 600));
// Center the sprite to the picture
Phaser.Display.Align.In.Center(block, pic);
}
}
const config = {
type: Phaser.AUTO,
parent: 'phaser-example',
width: 800,
height: 600,
scene: Example
};
const game = new Phaser.Game(config);
