Не работает расширение класса кнопки фазера

Мне нужно расширить класс кнопки Phaser, чтобы создать новый, но на сцене нет кнопок, но в консоли нет ошибок, это мой код для расширения класса.

var GAME = GAME || {}; // game namespace 
GAME.UiButton = function(){ // game class for buttons

            Phaser.Button.call(this,game);
    };
    GAME.UiButton.prototype = Object.create(Phaser.Button.prototype);
    GAME.UiButton.constructor = Phaser.Button;
    //

    game.state.start("preloader");

тогда, когда я создаю новый объект, на экране нет кнопок

var playButton = new GAME.UiButton(game,0,0,"button");

1 ответ

Решение

У вашего конструктора нет параметров.

GAME.UiButton = function(game, x, y, key, etc...){ 
    Phaser.Button.call(this, game, x, y, key, etc...);
};

или же

GAME.UiButton = function(){ 
    Phaser.Button.apply(this, arguments);
};

и вы никогда не добавите кнопку в игру.

game.add.existing(playButton)

DEMO

Другие вопросы по тегам