Я пытаюсь зациклить анимацию в 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 был больше единицы Я подозреваю, что мне не хватает чего-то довольно очевидного, но, поскольку я новичок в javascript и phaser, это не очевидно для меня.
спасибо!