在Phaser 3中控制动画循环

时间:2019-01-22 00:23:52

标签: javascript phaser-framework

我正在尝试在phaser3中循环播放动画指定次数。用户提供分配给“ loopTimes”变量的输入。我试图使该变量以两种不同的方式控制循环的数量,但这两种方法似乎都不起作用。

第一种方法是使用while循环的按钮推送功能:

totalButton.on('pointerdown', function () {
            loopTimes = varCountOne + varCountTwo;
            totalText.setText(loopTimes);
            var i = 0;
            while (i < loopTimes) {
                horse.anims.play('numerate');
                i++;
            }

        });

即使loopTimes为10,这也会导致动画循环一次(我已将其打印i值到控制台以确保其正确计数)。

第二种方法是在动画中使用loopTimes变量:

        this.anims.create({
            key: 'numerate',
            frames: this.anims.generateFrameNumbers('dude', {start: 0, end: 3}),
            frameRate: 10, 
            repeat: loopTimes
        });

即使loopTimes大于1,这也会导致循环发生一次。我怀疑我缺少明显的东西,但是由于我对javascript和phaser都不熟悉,所以对我来说并不明显。

谢谢!

0 个答案:

没有答案