Как получить все чанки
Minecraft.getMinecraft().world.getChunkProvider().chunkMapping.values()
Как получить все блоки
List<BlockPos> poses = Minecraft.getMinecraft().world.getChunkProvider().chunkMapping.values().stream()
.map(chunk -> new BlockPos(chunk.x << 4, 0, chunk.z << 4))
.flatMap(firstChunkPos ->
IntStream.range(0, 16).mapToObj(x ->
IntStream.range(0, 16).mapToObj(z ->
IntStream.range(0, 256).mapToObj(y ->
firstChunkPos.add(x, y, z)
)
).flatMap(Function.identity())
).flatMap(Function.identity())
)
.collect(Collectors.toList());
При чем здесь это? Задай отдельный вопрос про портированиеКак это из forge в версию запихать? (modcoderpack)
public BlockPos getClosetBlock(List<BlockPos> poses) {
if(poses.isEmpty()) {
return null;
}
BlockPos block = null;
double closetDistance = Double.MAX_VALUE;
for(BlockPos pos : poses) {
double dis = pos.distanceSq(pos);
if(closetDistance > dis) {
block = pos;
closetDistance = dis;
}
}
return block;
}
Гений...pos.distanceSq(pos)
Closest, наверное. Этот код ищет ближайший блок, а не дальний. Сам писал или скопипастил со стаковерфлоу, даже не разобравшись?Closet
Вот я тупой. Это я сам написал. Когда получается мне нужно заменить вместо > на <? Там где сравнениеClosest, наверное. Этот код ищет ближайший блок, а не дальний. Сам писал или скопипастил со стаковерфлоу, даже не разобравшись?