4

当我使用 建造新墙Creep.build()时,它会创建具有 1 个生命值的墙。现在我正在尝试创建一个可修复这些新建墙壁的蠕变。但我无法找到一种列出和迭代这些墙对象的好方法。

Game.structures不包含这些,因为墙不属于玩家。我能找到的唯一方法Game.getObjectById(objectId)是从我的游戏 ui(右面板)复制粘贴 id 的位置。

4

2 回答 2

8
var repairit = creep.room.find(FIND_STRUCTURES, { 
   filter: (structure) => { 
       return ((structure.hits < 5000) && (structure.hits > 0))
   }
});

这可以修复房间里的所有东西,我会给你一个关于墙壁的提示

structure.structureType == STRUCTURE_WALL
于 2016-07-01T08:24:08.320 回答
1

我用:

    var walls = creep.room.find(FIND_STRUCTURES, {
  filter: (n) => n.structureType == STRUCTURE_WALL
  });
于 2017-01-13T05:01:00.997 回答