Phaser游戏预加载不在简单示例中运行

时间:2018-03-11 05:38:20

标签: javascript html html5 phaser-framework

我遵循教程here,并且......我还没有走得太远。

我的代码如下所示。



var game = new Phaser.Game(480, 320, Phaser.AUTO, null, {preload: preload, create: create, update: update});

function preload() {
    game.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL;
    game.scale.pageAlignHorizontally = true;
    game.scale.pageAlignVertically = true;
    game.stage.backgroundColor = '#eee';
}
function create() {}
function update() {}

* { padding: 0; margin: 0; }

<script src="https://end3r.github.io/Gamedev-Phaser-Content-Kit/demos/js/phaser.2.4.2.min.js"></script>
&#13;
&#13;
&#13;

这段代码在jsfiddle中非常有用,但由于某些原因我无法解释,当我在本地运行它时它不起作用。我看到画布,但没有预载代码运行。背景是黑色的,没有对齐。我使用什么浏览器无关紧要。为什么会这样?

2 个答案:

答案 0 :(得分:2)

想出来,在版本3中,配置选项从state更改为scene。在这里查看文档:{​​{3}}

答案 1 :(得分:0)

你需要

this.scale.forcePortrait = true;

应该如此

function preload() {
    game.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL;
    game.scale.pageAlignHorizontally = true;
    game.scale.pageAlignVertically = true;
    this.scale.forcePortrait = true;
   game.stage.backgroundColor = '#eee';
}