Phaser 在预加载后动态加载图像

Phaser loading images dynamically after preload

我正在使用 Phaser 开发一款游戏。该游戏用无法预装的物品奖励玩家。在 Ajax 调用后,我希望加载图像,然后在移相器动画中显示它。有办法吗?

流:游戏正在玩 游戏完成并进行了 Ajax 通话。 Ajax 响应使用哪个图像。 Phaser 加载图像并显示他们赢得的内容。

您可以随时通过调用

使用 Phaser 的加载器加载图像

game.load.image('referenceName', 'assets/pics/file.jpg');

然后你可以像下面的那样设置一个事件 http://phaser.io/examples/v2/loader/load-events

game.load.onLoadComplete.add(aFunctionToCall, this);

但最重要的是不要忘记在设置完所有内容后实际告诉加载程序启动。

game.load.start();

Phaser 3 中的延迟加载可以通过使用 Phaser.Loader.LoaderPlugin(场景)

来完成
lazzyLoading:function(){
        var name = 'card-back';
        // texture needs to be loaded to create a placeholder card
        const card = this.add.image(WIDTH/2, HEIGHT/2, name);

        let loader = new Phaser.Loader.LoaderPlugin(this);
        // ask the LoaderPlugin to load the texture
        loader.image(name, 'assets/images/demon-large1.png');

        loader.once(Phaser.Loader.Events.COMPLETE, () => {
            // texture loaded so use instead of the placeholder
            card.setTexture(name)
        });
        loader.start();
    }