Class StructureCheck
java.lang.Object
net.minecraft.world.level.levelgen.structure.StructureCheck
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BiomeSource
private final ChunkGenerator
private final ResourceKey
<Level> private final com.mojang.datafixers.DataFixer
private final LevelHeightAccessor
private final it.unimi.dsi.fastutil.longs.Long2ObjectMap
<it.unimi.dsi.fastutil.objects.Object2IntMap<Structure>> private static final org.slf4j.Logger
private static final int
private final RandomState
private final RegistryAccess
private final long
private final ChunkScanAccess
private final StructureTemplateManager
-
Constructor Summary
ConstructorsConstructorDescriptionStructureCheck
(ChunkScanAccess pStorageAccess, RegistryAccess pRegistryAccess, StructureTemplateManager pStructureTemplateManager, ResourceKey<Level> pDimension, ChunkGenerator pChunkGenerator, RandomState pRandomState, LevelHeightAccessor pHeightAccessor, BiomeSource pBiomeSource, long pSeed, com.mojang.datafixers.DataFixer pFixerUpper) -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
canCreateStructure
(ChunkPos pChunkPos, Structure pStructure) checkStart
(ChunkPos pChunkPos, Structure pStructure, StructurePlacement pPlacement, boolean pSkipKnownStructures) private StructureCheckResult
checkStructureInfo
(it.unimi.dsi.fastutil.objects.Object2IntMap<Structure> pStructureChunks, Structure pStructure, boolean pSkipKnownStructures) private static it.unimi.dsi.fastutil.objects.Object2IntMap
<Structure> deduplicateEmptyMap
(it.unimi.dsi.fastutil.objects.Object2IntMap<Structure> pMap) void
incrementReference
(ChunkPos pPos, Structure pStructure) private it.unimi.dsi.fastutil.objects.Object2IntMap
<Structure> loadStructures
(CompoundTag pTag) void
onStructureLoad
(ChunkPos pChunkPos, Map<Structure, StructureStart> pChunkStarts) private void
storeFullResults
(long pChunkPos, it.unimi.dsi.fastutil.objects.Object2IntMap<Structure> pStructureChunks) private StructureCheckResult
tryLoadFromStorage
(ChunkPos pChunkPos, Structure pStructure, boolean pSkipKnownStructures, long pPackedChunkPos)
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
NO_STRUCTURE
private static final int NO_STRUCTURE- See Also:
-
storageAccess
-
registryAccess
-
structureTemplateManager
-
dimension
-
chunkGenerator
-
randomState
-
heightAccessor
-
biomeSource
-
seed
private final long seed -
fixerUpper
private final com.mojang.datafixers.DataFixer fixerUpper -
loadedChunks
private final it.unimi.dsi.fastutil.longs.Long2ObjectMap<it.unimi.dsi.fastutil.objects.Object2IntMap<Structure>> loadedChunks -
featureChecks
-
-
Constructor Details
-
StructureCheck
public StructureCheck(ChunkScanAccess pStorageAccess, RegistryAccess pRegistryAccess, StructureTemplateManager pStructureTemplateManager, ResourceKey<Level> pDimension, ChunkGenerator pChunkGenerator, RandomState pRandomState, LevelHeightAccessor pHeightAccessor, BiomeSource pBiomeSource, long pSeed, com.mojang.datafixers.DataFixer pFixerUpper)
-
-
Method Details
-
checkStart
public StructureCheckResult checkStart(ChunkPos pChunkPos, Structure pStructure, StructurePlacement pPlacement, boolean pSkipKnownStructures) -
canCreateStructure
-
tryLoadFromStorage
@Nullable private StructureCheckResult tryLoadFromStorage(ChunkPos pChunkPos, Structure pStructure, boolean pSkipKnownStructures, long pPackedChunkPos) -
loadStructures
@Nullable private it.unimi.dsi.fastutil.objects.Object2IntMap<Structure> loadStructures(CompoundTag pTag) -
deduplicateEmptyMap
-
checkStructureInfo
private StructureCheckResult checkStructureInfo(it.unimi.dsi.fastutil.objects.Object2IntMap<Structure> pStructureChunks, Structure pStructure, boolean pSkipKnownStructures) -
onStructureLoad
-
storeFullResults
private void storeFullResults(long pChunkPos, it.unimi.dsi.fastutil.objects.Object2IntMap<Structure> pStructureChunks) -
incrementReference
-