Я нуб в Phaser 3 и пытаюсь добавить группу (2 спрайта) в последователя. Код работает, когда я использую спрайт в «add.follower».
function create () {
var bola = this.add.group();
bola.create(0, 0, 'bola15');
bola.create(0, 0, 'bolasombra');
var line1 = new Phaser.Curves.Line([ 100, 100, 500, 100 ]);
var line2 = new Phaser.Curves.Line([ 500, 100, 500, 500 ]);
path1 = this.add.path();
path1.add(line1);
path1.add(line2);
var mover = this.add.follower(path1, 0, 0, bola);
mover.startFollow({
positionOnPath: true,
duration: 3000,
yoyo: false,
repeat: 0,
rotateToPath: false,
verticalAdjust: true
});
}
Вот что я получил:
Любое решение для этого или другой способ сделать что-то подобное?
Редактировать:
Попробовали с «контейнером» и получили тот же результат:
bola = this.add.container(0,0);
bola1 = this.add.sprite(0,0,'bola15');
bola2 = this.add.sprite(0,0,'bolasombra');
bola.add(bola1);
bola.add(bola2);






В текущем состоянии PathFollower настроен на прием только одного игрового объекта. К сожалению, это означает, что вам придется добавлять элементы вашей группы к подписчику один за другим. Вы можете настроить цикл для прохождения элементов вашей группы и создания последователей пути следующим образом:
for (var i = 0; i < bola.children.entries.length; i++) {
var mover = this.add.follower(path1, 0, 0, bola.children.entries[i].texture.key);
mover.startFollow({
positionOnPath: true,
duration: 3000,
yoyo: false,
repeat: 0,
rotateToPath: false,
verticalAdjust: true
});
}
Проверьте этот пример из лаборатории Phaser 3, чтобы увидеть еще один пример того, как вы можете использовать несколько элементов с одним и тем же путем, если структура группы не важна для вашей игры.
Ага... Я пробовал и работает нормально, но я подумал, что это должен быть "элегантный способ"... Спасибо! Я собираюсь использовать это вместо этого.