当我使用 建造新墙Creep.build()
时,它会创建具有 1 个生命值的墙。现在我正在尝试创建一个可修复这些新建墙壁的蠕变。但我无法找到一种列出和迭代这些墙对象的好方法。
Game.structures
不包含这些,因为墙不属于玩家。我能找到的唯一方法Game.getObjectById(objectId)
是从我的游戏 ui(右面板)复制粘贴 id 的位置。
当我使用 建造新墙Creep.build()
时,它会创建具有 1 个生命值的墙。现在我正在尝试创建一个可修复这些新建墙壁的蠕变。但我无法找到一种列出和迭代这些墙对象的好方法。
Game.structures
不包含这些,因为墙不属于玩家。我能找到的唯一方法Game.getObjectById(objectId)
是从我的游戏 ui(右面板)复制粘贴 id 的位置。
var repairit = creep.room.find(FIND_STRUCTURES, {
filter: (structure) => {
return ((structure.hits < 5000) && (structure.hits > 0))
}
});
这可以修复房间里的所有东西,我会给你一个关于墙壁的提示
structure.structureType == STRUCTURE_WALL
我用:
var walls = creep.room.find(FIND_STRUCTURES, {
filter: (n) => n.structureType == STRUCTURE_WALL
});