本文使用:CC-BY-NC-SA 4.0协议
直接上代码
在此推荐下来自ZZZank的ProbeJS Legacy
(已经支持1.20.1了(喜))
/**
* 获取实体坐标的所有结构
* @param {Internal.Entity} entity
* @returns {$StructureStart_[]}
*/
function getAllStructuresAt(entity) {
let structureList = []
/**@type {$ServerLevel_} */
let serverLevel = entity.level
let entityPos = entity.block.pos
/** @type {Internal.Structure[]} */
let structureArray = serverLevel.structureManager().getAllStructuresAt(entityPos).keySet().toArray()
for (let structure of structureArray) {
let structureStart =
serverLevel.structureManager().getStructureAt(entityPos, structure)
if (structureStart.isValid()) {
structureList.push(structureStart)
}
}
return structureList
}