如何在Phaser 3中为组设置配置?

时间:2019-03-14 02:22:44

标签: javascript phaser-framework

在Phaser 3游戏中,我有一个名为OBS的组,用于存储所有障碍精灵。

OBS = this.physics.add.group 

我想将从该组创建的每个孩子的速度设置为特定值,例如

setVelocityY=40

因此,OBS组中的每个对象都将以40速度运动。如何为该组设置配置,以使添加到其中的每个对象都以给定的速度运动并具有其他共同属性?

2 个答案:

答案 0 :(得分:0)

有多种方法可以做到这一点。

  1. 使用配置- 您可以在创建PhysicsGroupConfig时传递group,并在该配置中设置velocityY,该配置将设置该组中每个子级的velocityY。您可以在config中设置许多属性。查看文档。

  2. 使用setVelocitysetVelocityY之类的组方法-如果要在创建组后设置速度,可以使用setvelocityYsetVelocity之类的组方法。 / p>

答案 1 :(得分:0)

您可以使用 for 循环为所有子元素添加属性。
例如。如果你有 3 个子元素,你可以这样做:

var OBSPositions = [
    { x: 50, y: 80 },
    { x: 50, y: 480 },
    { x: 300, y: 480 }
];

OBS = this.physics.add.group;
for (var i = 0; i < OBSPositions.length; i++) {
    var OBSchild = OBS.create(
        OBSPositions[i].x,
        OBSPositions[i].y,
        'OBSsprite'
    ).setScale(0.13, 0.13);

    OBSchild.setVelocityY = 40;
}