如何在Phaser中输入文本?

时间:2015-08-18 11:48:13

标签: javascript phaser-framework

我正在与Phaser制作HTML5游戏,我想将palyer名称作为输入并保存以供日后使用我如何使用Phaser进行操作?

3 个答案:

答案 0 :(得分:3)

我从来没有见过覆盖HTML的Flash游戏来处理文本。我希望随着Javscript游戏引擎的增长,他们最终会发现他们还需要处理画布内的渲染文本。好消息是这项工作已经开始。 https://github.com/goldfire/CanvasInput

<script src="CanvasInput.min.js"></script>

<script>
    var bmd = this.add.bitmapData(400, 50);    
    var myInput = this.game.add.sprite(15, 15, bmd);

    myInput.canvasInput = new CanvasInput({
        canvas: bmd.canvas,
    });
    myInput.inputEnabled = true;
    myInput.input.useHandCursor = true;    
</script>

此处可以看到Phaser和CanvasInput演示,http://codepen.io/jdnichollsc/pen/waVMdB?editors=001

一个缺点是您必须使用Phaser.CANVAS而不是Phaser.AUTO在Phaser中使用画布渲染。

更新:有人也将此作为https://github.com/orange-games/phaser-input

答案 1 :(得分:1)

在我的游戏中,我使用模态(http://getbootstrap.com/javascript/#modals)来允许用户输入名称。我还实现了排行榜。为了节省用户和分数(+次),我整合了解析(https://www.parse.com/

工作示例:http://majery.pl/memo/

答案 2 :(得分:0)

考虑使用CanvasInput库。它创建基于画布的本机输入,非常容易使用。您将其添加到create方法并从那里继续。 Here's an example它与Phaser一起使用。