From 479d12600ab1ac6651e7062278d7ce2e6c51a1a2 Mon Sep 17 00:00:00 2001 From: Andrew Stein Date: Tue, 26 Apr 2022 20:27:43 -0400 Subject: [PATCH] findNearestMapFeature-Resolution diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java index 08cd239cc..f4f18ac01 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -3,6 +3,7 @@ package net.minecraft.server.level; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.Lists; import com.mojang.datafixers.DataFixer; +import com.mojang.datafixers.util.Either; import com.mojang.datafixers.util.Pair; import com.mojang.logging.LogUtils; import it.unimi.dsi.fastutil.ints.Int2ObjectMap; @@ -20,14 +21,7 @@ import java.io.IOException; import java.io.Writer; import java.nio.file.Files; import java.nio.file.Path; -import java.util.ArrayList; -import java.util.Comparator; -import java.util.Iterator; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.UUID; +import java.util.*; import java.util.concurrent.Executor; import java.util.function.BooleanSupplier; import java.util.function.Function; @@ -1345,15 +1339,10 @@ public class WorldServer extends World implements GeneratorAccessSeed { if (!this.serverLevelData.worldGenSettings().generateFeatures()) { // CraftBukkit return null; } else { - Optional>> optional = this.registryAccess().registryOrThrow(IRegistry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY).getTag(tagkey); - - if (optional.isEmpty()) { - return null; - } else { - Pair>> pair = this.getChunkSource().getGenerator().findNearestMapFeature(this, (HolderSet) optional.get(), blockposition, i, flag); - - return pair != null ? (BlockPosition) pair.getFirst() : null; - } + IRegistry> iregistry = getLevel().registryAccess().registryOrThrow(IRegistry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY); + Holder> var3 = iregistry.getHolderOrThrow(iregistry.getResourceKey(iregistry.get(tagkey.location())).orElse(ResourceKey.create(iregistry.key(), tagkey.location()))); + Pair>> pair = this.getChunkSource().getGenerator().findNearestMapFeature(this, (HolderSet) HolderSet.direct(var3), blockposition, i, flag); + return pair != null ? pair.getFirst() : null; } } -- 2.32.0.windows.1