将场景添加到Phaser 3游戏中无法正常工作

时间:2019-08-05 09:19:20

标签: javascript phaser-framework

所以我试图将场景添加到我的Phaser 3 game.js文件中(您可以看到场景here,并且可以在(很多测试版)操作here中看到场景),< / p>

根据

let gameScene = new Phaser.Scene('Game');

gameScene.preload = function() {

方法描述了here,并通过

启动它们
var game = new Phaser.Game(800,800, Phaser.AUTO, 'game-div', {Game});

那只会导致黑屏。

基本上,我想通过使用场景来创建开始菜单和游戏结束菜单。对于上述添加场景或创建简单菜单的方法的任何轻量级替代品,我们深表感谢!

2 个答案:

答案 0 :(得分:1)

config.scene中,使用带有对象的数组作为场景。

var scene1 = {
    key:'scene1_start_screen', preload: function(){},   create: function(){
  //start sceen create, call next scene with
  phaser_game.scene.start('scene2_game_screen');
  //stop this scene with 
  phaser_game.scene.stop('scene1_start_screen');

  },
}
var scene2 = {
    key:'scene2_game_screen',preload: function(){}, create: function(){},
}

var config = {
    type: Phaser.AUTO,
    width: 600,
    height: 600,
    backgroundColor: "#b9eaff",
    physics: {
        default: 'arcade',
        arcade: {
            gravity: { y: 200 }
        }
    },
    parent: 'game',
    scene: [scene1,scene2]

};

答案 1 :(得分:1)

问题是您在这里混合了Phaser 2和Phaser 3代码。场景仅是Phaser 3的功能,但是您链接的文件中和链接文件中的代码都是Phaser 2的代码。因此,您需要坚持使用一个版本或另一个版本,恐怕不能像这样混合使用它们。