6

我正在使用定时事件动态添加 Sprites。我找不到在生成的精灵上方添加新图形(被淹没的矩形)的方法。

精灵总是在顶部

create()
{
  var graphics = game.add.graphics(0, 0);
  graphics.beginFill(0xFFFF0B);
  graphics.drawRect(0, 0, windowWidth, 70);
  graphics.endFill();
  timer = game.time.events.loop(1500, addSprite, this);
}

addSprite()
{  
  sprite= game.add.sprite(20, 30, 'sprite');
}

有什么帮助吗??

4

1 回答 1

11

Phaser 中的图形对象只是像 Sprites 一样的标准显示列表对象。它们默认添加到世界中(就像 Sprites 一样),您可以使用 Phaser.Group 级别的命令(如 moveUp、moveDown、bringToTop 等)移动它们。您可以在此处找到完整列表:http://docs。 phaser.io/Phaser.Group.html

因此,一旦您在上面的代码中添加了 Sprite,请将您的 Graphics 对象带到 Group 的顶部:

game.world.bringToTop(graphics);

注意:目前你有一个本地 var graphics,所以你需要让它对你的其他函数可见才能工作。

于 2014-06-02T02:38:03.933 回答