Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Meteor本地包,phaser游戏,资产加载?_Meteor_Phaser Framework - Fatal编程技术网

Meteor本地包,phaser游戏,资产加载?

Meteor本地包,phaser游戏,资产加载?,meteor,phaser-framework,Meteor,Phaser Framework,好的,我正在尝试从一个移相器游戏中制作一个包,已经研究了几天,但它似乎不起作用。 我想我发现了问题所在,希望有人能帮我解决这个问题 我把所有东西都设置为使用本地包,这一切都是可行的。 直到我预加载资产 这是我的菜单课 Menu = function() { console.log(this); } Menu.prototype = { preload: function(){ this.load.image('background', 'assets/backg

好的,我正在尝试从一个移相器游戏中制作一个包,已经研究了几天,但它似乎不起作用。 我想我发现了问题所在,希望有人能帮我解决这个问题

我把所有东西都设置为使用本地包,这一切都是可行的。 直到我预加载资产

这是我的菜单课

Menu = function() {
    console.log(this);
}

Menu.prototype = {
    preload: function(){
        this.load.image('background', 'assets/background.png');
        console.log("ok in preload");
    },
    create: function(){
        this.background = this.game.add.sprite(0, 0, 'background');
        console.log("ok in create");
        var text = "We're getting there";
        var style = { font: "23px Arial", fill: "#ff0044", align: "center" };

        var t = game.add.text(game.world.centerX, 0, text, style);
    },
};
我称之为做

game = new Phaser.Game(400, 300, Phaser.AUTO, "gameWindow");
game.state.add('menu', Menu);
game.state.start('menu');
通过查看控制台日志,这一切似乎都能正常工作,只要我不尝试在preload函数中加载映像,如果我这样做,它就会一直卡在preload函数中

background.png位于我的根文件夹“public/assets/background.png”。 所以我在想,当我试图从一个本地包访问它时,它很难到达那里

my package.js是这样的:

Package.describe({
  summary: "game one"
});

Package.on_use(function (api, where) {
    api.use(['phaserio'], 'client');

    api.add_files(['states/menu.js'],
                  ['client']);

    api.export('Menu', ['client']);
});
有人看到我做错了什么吗?
提前谢谢

您应该能够从应用程序加载公共图像,但这取决于预加载序列何时运行。首先解析包。那么你的新游戏是在Meteor.startUp->中创建的吗?应用程序本身在什么时候初始化

您还可以将资产放入包本身。 你用的是0.9吗?包内静态资产的路径存在一些问题 请参阅此线程:

对于0.9包,您必须添加更多信息

Package.describe({
  summary: "phaser for meteor",
  version: '0.0.1',
  git: 'https://github.com/dcsan/package-dev',
  name: "YOURNAME:phaser"
});
当前,如果使用类似于用下划线替换冒号的内容:

/packages/YOURNAME_phaser/added/path/to/asset.png
如果你得到了phaser包装,我也会感兴趣,所以请发布到大气