Создание игрового мира

Метод this.add.image создает новый игровой объект Image и добавляет его в список объектов в текущей сцене для отображения. В этом списке находятся все ваши игровые объекты. Вы можете расположить изображение в любом месте, и Phaser не будет возражать. Конечно, если оно находится за пределами области от 0x0 до 800x600, вы не увидите его визуально, потому что оно будет «за кадром», но оно все равно будет существовать в сцене. Сама сцена не имеет фиксированного размера и растягивается бесконечно во всех направлениях. Система камер контролирует ваш вид на сцену, и вы можете перемещать и масштабировать активную камеру по мере необходимости. Кроме того, вы можете создавать новые камеры для других видов сцены. Эта тема выходит за рамки этого курса, достаточно знать, что система камер в Phaser 3 гораздо более продвинутая, чем в v2. То, что раньше было невозможно, теперь возможно.

А пока давайте создадим сцену, добавив фоновое изображение и некоторые платформы. Вот обновленная функция create:

var platforms;

function create ()
{
    this.add.image(400, 300, 'sky');

    platforms = this.physics.add.staticGroup();

    platforms.create(400, 568, 'ground').setScale(2).refreshBody();

    platforms.create(600, 400, 'ground');
    platforms.create(50, 250, 'ground');
    platforms.create(750, 220, 'ground');
}

Обратите внимание на вызов this.physics, который позволяет нам использовать систему для аркадной физики. Однако одного этого вызова недостаточно, нам нужно изменить объект config, чтобы Phaser знал, что мы собираемся использовать эту систему:

var config = {
    type: Phaser.AUTO,
    width: 800,
    height: 600,
    physics: {
        default: 'arcade',
        arcade: {
            gravity: { y: 300 },
            debug: false
        }
    },
    scene: {
        preload: preload,
        create: create,
        update: update
    }
};

Мы добавили свойство physics в объект config. Вы можете найти этот код в файле part4.html . Наша сцена начинает напоминать игру:

Теперь у нас есть фон и некоторые платформы, но как эти платформы на самом деле работают?

Назад       Далее