← На главную
Серия руководств

Шаг 4. Запуск игры

Создание шаблона проекта PixiJS • Шаг 4 из 7

В классе Application реализуем start, который запустит игру после загрузки ресурсов:

// ...
class Application {
// ... 
    start() {
        this.scene = new this.config["startScene"]();
        this.app.stage.addChild(this.scene.container);
    }

Можно было бы создать экземпляр класса сцены прямо в start. Но мы хотим, чтобы общий код папки system не зависел от игрового кода папки game. Для этого мы и разделили системный код и код проекта. При этом системный код может узнавать нужные параметры через конфигурацию игры, переданную классу App при запуске приложения. Поэтому вместо прямого создания игровой сцены в Application лучше создать её через параметр конфигурации. Добавьте параметр startScene в конфигурацию игры в Config.js:

import { Game } from "./Game";
 
export const Config = {
    // ...
    startScene: Game,
};

Создайте сам класс Game в папке игры /src/scripts/game/Game:

import * as PIXI from "pixi.js";
import { App } from "../system/App";
  
export class Game {
    constructor() {
        this.container = new PIXI.Container();
    }
}

Класс сцены основан на PIXI.Container. Все объекты сцены будем добавлять в этот контейнер. Сам контейнер сцены мы добавили в основной контейнер app.stage в методе start класса Application.