Как изменить гравитацию только в одной сцене (Phaser)? - PullRequest
1 голос
/ 10 октября 2019

Я бы хотел научиться создавать игры с использованием Phaser.

Я знаю, что вы определяете гравитацию в конфигурации, как это:

var config = {
        type: Phaser.AUTO,
        width: 800,
        height: 600,
        physics: {
            default: 'arcade',
            arcade: {
                gravity: { y: 300 },
                debug: false
            }
        },
        scene: [FirstScene, SecondScene,...]
    };

Но это относится ко всем сценам. Есть ли способ, как изменить гравитацию только в одной сцене.

1 Ответ

2 голосов
/ 10 октября 2019

Вы можете указать гравитацию для конкретной сцены, переопределив физические настройки в методе конструктора сцены.

class FirstScene extends Phaser.Scene {
  constructor() {
    super({
      key: 'first',
      physics: {
        default: 'arcade',
        arcade: { 
          gravity: { y: 2000 }
        }
      }
    });
} 

Проверьте API Документы , чтобы узнать, что еще можно настроитьна основе сцены за сценой.

...