Migrated some API calls

This commit is contained in:
Frank 2022-11-12 12:10:59 +01:00
parent c11fca74a5
commit daa4a2b4af
56 changed files with 172 additions and 167 deletions

View file

@ -11,7 +11,7 @@ import com.mojang.serialization.Encoder;
import com.mojang.serialization.JsonOps; import com.mojang.serialization.JsonOps;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.data.CachedOutput; import net.minecraft.data.CachedOutput;
import net.minecraft.data.DataProvider; import net.minecraft.data.DataProvider;
import net.minecraft.data.PackOutput; import net.minecraft.data.PackOutput;
@ -60,7 +60,7 @@ public class BCLibDatagen implements DataGeneratorEntrypoint {
@Override @Override
public CompletableFuture<?> run(CachedOutput cachedOutput) { public CompletableFuture<?> run(CachedOutput cachedOutput) {
RegistryAccess.Frozen registryAccess = BuiltinRegistries.createAccess(); RegistryAccess.Frozen registryAccess = BuiltInRegistries.createAccess();
RegistryOps<JsonElement> dynamicOps = RegistryOps.create(JsonOps.INSTANCE, registryAccess); RegistryOps<JsonElement> dynamicOps = RegistryOps.create(JsonOps.INSTANCE, registryAccess);
final List<CompletableFuture<?>> futures = new ArrayList<>(); final List<CompletableFuture<?>> futures = new ArrayList<>();

View file

@ -8,7 +8,6 @@ import org.betterx.bclib.api.v2.levelgen.LevelGenUtil;
import org.betterx.bclib.config.Configs; import org.betterx.bclib.config.Configs;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.NbtOps;
import net.minecraft.nbt.Tag; import net.minecraft.nbt.Tag;

View file

@ -21,7 +21,6 @@ import org.betterx.worlds.together.tag.v3.MineableTags;
import org.betterx.worlds.together.tag.v3.TagManager; import org.betterx.worlds.together.tag.v3.TagManager;
import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.RenderType;
import net.minecraft.core.Registry;
import net.minecraft.tags.TagKey; import net.minecraft.tags.TagKey;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -56,7 +55,7 @@ public class PostInitAPI {
* @param isClient {@code boolean}, {@code true} for client, {@code false} for server. * @param isClient {@code boolean}, {@code true} for client, {@code false} for server.
*/ */
public static void postInit(boolean isClient) { public static void postInit(boolean isClient) {
Registry.BLOCK.forEach(block -> { BuiltInRegistries.BLOCK.forEach(block -> {
processBlockCommon(block); processBlockCommon(block);
if (isClient) { if (isClient) {
processBlockClient(block); processBlockClient(block);
@ -64,7 +63,7 @@ public class PostInitAPI {
}); });
Registry.ITEM.forEach(item -> { BuiltInRegistries.ITEM.forEach(item -> {
processItemCommon(item); processItemCommon(item);
}); });

View file

@ -7,7 +7,6 @@ import org.betterx.bclib.items.complex.EquipmentSet;
import net.minecraft.advancements.*; import net.minecraft.advancements.*;
import net.minecraft.advancements.critereon.*; import net.minecraft.advancements.critereon.*;
import net.minecraft.core.Registry;
import net.minecraft.data.recipes.RecipeBuilder; import net.minecraft.data.recipes.RecipeBuilder;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
@ -148,11 +147,11 @@ public class AdvancementManager {
} }
public static Builder create(ItemStack icon, AdvancementType type, Consumer<DisplayBuilder> displayAdapter) { public static Builder create(ItemStack icon, AdvancementType type, Consumer<DisplayBuilder> displayAdapter) {
var id = Registry.ITEM.getKey(icon.getItem()); var id = BuiltInRegistries.ITEM.getKey(icon.getItem());
boolean canBuild = true; boolean canBuild = true;
if (id == null || icon.is(Items.AIR)) { if (id == null || icon.is(Items.AIR)) {
canBuild = false; canBuild = false;
id = Registry.ITEM.getDefaultKey(); id = BuiltInRegistries.ITEM.getDefaultKey();
} }
String baseName = "advancements." + id.getNamespace() + "." + id.getPath() + "."; String baseName = "advancements." + id.getNamespace() + "." + id.getPath() + ".";
@ -214,7 +213,7 @@ public class AdvancementManager {
if (icon == null) { if (icon == null) {
canBuild = false; canBuild = false;
} else { } else {
var id = Registry.ITEM.getKey(icon.getItem()); var id = BuiltInRegistries.ITEM.getKey(icon.getItem());
if (id == null) { if (id == null) {
canBuild = false; canBuild = false;
} }
@ -231,7 +230,7 @@ public class AdvancementManager {
public Builder awardRecipe(ItemLike... items) { public Builder awardRecipe(ItemLike... items) {
var rewardBuilder = startReward(); var rewardBuilder = startReward();
for (ItemLike item : items) { for (ItemLike item : items) {
var id = Registry.ITEM.getKey(item.asItem()); var id = BuiltInRegistries.ITEM.getKey(item.asItem());
if (id == null) continue; if (id == null) continue;
rewardBuilder.addRecipe(id); rewardBuilder.addRecipe(id);
} }

View file

@ -8,7 +8,6 @@ import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder; import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.KeyDispatchDataCodec; import net.minecraft.util.KeyDispatchDataCodec;

View file

@ -10,7 +10,6 @@ import net.minecraft.core.Holder;
import net.minecraft.core.MappedRegistry; import net.minecraft.core.MappedRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.KeyDispatchDataCodec; import net.minecraft.util.KeyDispatchDataCodec;

View file

@ -16,7 +16,8 @@ import net.minecraft.core.BlockPos;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.HolderSet; import net.minecraft.core.HolderSet;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.BiomeTags; import net.minecraft.tags.BiomeTags;
@ -63,7 +64,7 @@ public class BiomeAPI {
* @return {@link BCLBiome} * @return {@link BCLBiome}
*/ */
public static BCLBiome registerBuiltinBiomeAndOverrideIntendedDimension(BCLBiome bclbiome, BiomeType dim) { public static BCLBiome registerBuiltinBiomeAndOverrideIntendedDimension(BCLBiome bclbiome, BiomeType dim) {
return registerBiomeAndOverrideIntendedDimension(bclbiome, dim, BuiltinRegistries.BIOME); return registerBiomeAndOverrideIntendedDimension(bclbiome, dim, Registries.BIOME);
} }
static BCLBiome registerBiomeAndOverrideIntendedDimension( static BCLBiome registerBiomeAndOverrideIntendedDimension(
@ -472,7 +473,7 @@ public class BiomeAPI {
Optional<ResourceKey<Biome>> key = InternalBiomeAPI.biomeRegistry.getResourceKey(biome); Optional<ResourceKey<Biome>> key = InternalBiomeAPI.biomeRegistry.getResourceKey(biome);
if (key.isPresent()) return key.get(); if (key.isPresent()) return key.get();
} }
return BuiltinRegistries.BIOME return BuiltInRegistries.BIOME
.getResourceKey(biome) .getResourceKey(biome)
.orElseGet(null); .orElseGet(null);
} }

View file

@ -7,7 +7,6 @@ import org.betterx.bclib.mixin.common.BiomeGenerationSettingsAccessor;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;

View file

@ -5,7 +5,6 @@ import org.betterx.bclib.mixin.common.StructuresAccessor;
import com.mojang.serialization.Codec; import com.mojang.serialization.Codec;
import net.minecraft.core.*; import net.minecraft.core.*;
import net.minecraft.data.BuiltinRegistries;
import net.minecraft.data.worldgen.StructureSets; import net.minecraft.data.worldgen.StructureSets;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;

View file

@ -2,7 +2,7 @@ package org.betterx.bclib.api.v2.levelgen.structures;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.core.HolderLookup; import net.minecraft.core.HolderLookup;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag; import net.minecraft.nbt.ListTag;
import net.minecraft.nbt.NbtUtils; import net.minecraft.nbt.NbtUtils;
@ -120,7 +120,7 @@ public class StructureWorld {
BlockState[] states = new BlockState[map2.size()]; BlockState[] states = new BlockState[map2.size()];
for (int i = 0; i < states.length; i++) { for (int i = 0; i < states.length; i++) {
states[i] = NbtUtils.readBlockState( states[i] = NbtUtils.readBlockState(
HolderLookup.forRegistry(Registry.BLOCK), HolderLookup.forRegistry(BuiltInRegistries.BLOCK),
(CompoundTag) map2.get(i) (CompoundTag) map2.get(i)
); );
} }

View file

@ -17,7 +17,7 @@ import org.betterx.bclib.util.Triple;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.random.SimpleWeightedRandomList; import net.minecraft.util.random.SimpleWeightedRandomList;
import net.minecraft.util.valueproviders.ConstantInt; import net.minecraft.util.valueproviders.ConstantInt;
@ -211,8 +211,8 @@ public abstract class BCLFeatureBuilder<F extends Feature<FC>, FC extends Featur
ResourceLocation id, ResourceLocation id,
ConfiguredFeature<FC, F> cFeature ConfiguredFeature<FC, F> cFeature
) { ) {
return (Holder<ConfiguredFeature<FC, F>>) (Object) BuiltinRegistries.register( return (Holder<ConfiguredFeature<FC, F>>) (Object) BuiltInRegistries.register(
BuiltinRegistries.CONFIGURED_FEATURE, BuiltInRegistries.CONFIGURED_FEATURE,
id, id,
cFeature cFeature
); );

View file

@ -3,7 +3,7 @@ package org.betterx.bclib.blocks;
import org.betterx.bclib.client.models.BasePatterns; import org.betterx.bclib.client.models.BasePatterns;
import org.betterx.bclib.client.models.PatternsHelper; import org.betterx.bclib.client.models.PatternsHelper;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import java.util.Optional; import java.util.Optional;
@ -15,7 +15,7 @@ public class BaseBarkBlock extends BaseRotatedPillarBlock {
@Override @Override
protected Optional<String> createBlockPattern(ResourceLocation blockId) { protected Optional<String> createBlockPattern(ResourceLocation blockId) {
blockId = Registry.BLOCK.getKey(this); blockId = BuiltInRegistries.BLOCK.getKey(this);
return PatternsHelper.createJson(BasePatterns.BLOCK_BASE, replacePath(blockId)); return PatternsHelper.createJson(BasePatterns.BLOCK_BASE, replacePath(blockId));
} }

View file

@ -8,7 +8,7 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.BlockModelRotation; import net.minecraft.client.resources.model.BlockModelRotation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
@ -51,7 +51,7 @@ public abstract class BaseButtonBlock extends ButtonBlock implements BlockModelP
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public BlockModel getItemModel(ResourceLocation blockId) { public BlockModel getItemModel(ResourceLocation blockId) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern = PatternsHelper.createJson(BasePatterns.ITEM_BUTTON, parentId); Optional<String> pattern = PatternsHelper.createJson(BasePatterns.ITEM_BUTTON, parentId);
return ModelsHelper.fromPattern(pattern); return ModelsHelper.fromPattern(pattern);
} }
@ -59,7 +59,7 @@ public abstract class BaseButtonBlock extends ButtonBlock implements BlockModelP
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern = blockState.getValue(POWERED) Optional<String> pattern = blockState.getValue(POWERED)
? PatternsHelper.createJson( ? PatternsHelper.createJson(
BasePatterns.BLOCK_BUTTON_PRESSED, BasePatterns.BLOCK_BUTTON_PRESSED,

View file

@ -8,7 +8,7 @@ import org.betterx.bclib.registry.BaseBlockEntities;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -55,7 +55,7 @@ public class BaseChestBlock extends ChestBlock implements BlockModelProvider {
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
return ModelsHelper.createBlockEmpty(parentId); return ModelsHelper.createBlockEmpty(parentId);
} }
} }

View file

@ -8,7 +8,7 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.BlockModelRotation; import net.minecraft.client.resources.model.BlockModelRotation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -42,7 +42,7 @@ public class BaseFenceBlock extends FenceBlock implements BlockModelProvider {
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public BlockModel getItemModel(ResourceLocation blockId) { public BlockModel getItemModel(ResourceLocation blockId) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern = PatternsHelper.createJson(BasePatterns.ITEM_FENCE, parentId); Optional<String> pattern = PatternsHelper.createJson(BasePatterns.ITEM_FENCE, parentId);
return ModelsHelper.fromPattern(pattern); return ModelsHelper.fromPattern(pattern);
} }
@ -50,7 +50,7 @@ public class BaseFenceBlock extends FenceBlock implements BlockModelProvider {
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
String path = blockId.getPath(); String path = blockId.getPath();
Optional<String> pattern = Optional.empty(); Optional<String> pattern = Optional.empty();
if (path.endsWith("_post")) { if (path.endsWith("_post")) {

View file

@ -7,7 +7,7 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
@ -50,7 +50,7 @@ public class BaseGateBlock extends FenceGateBlock implements BlockModelProvider
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
boolean inWall = blockState.getValue(IN_WALL); boolean inWall = blockState.getValue(IN_WALL);
boolean isOpen = blockState.getValue(OPEN); boolean isOpen = blockState.getValue(OPEN);
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern; Optional<String> pattern;
if (inWall) { if (inWall) {
pattern = isOpen pattern = isOpen

View file

@ -11,7 +11,7 @@ import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.BlockModelRotation; import net.minecraft.client.resources.model.BlockModelRotation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -45,7 +45,7 @@ public class BaseMetalBarsBlock extends IronBarsBlock implements BlockModelProvi
} }
public Optional<String> getModelString(String block) { public Optional<String> getModelString(String block) {
ResourceLocation blockId = Registry.BLOCK.getKey(this); ResourceLocation blockId = BuiltInRegistries.BLOCK.getKey(this);
if (block.contains("item")) { if (block.contains("item")) {
return PatternsHelper.createJson(BasePatterns.ITEM_BLOCK, blockId); return PatternsHelper.createJson(BasePatterns.ITEM_BLOCK, blockId);
} }
@ -65,7 +65,7 @@ public class BaseMetalBarsBlock extends IronBarsBlock implements BlockModelProvi
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
ResourceLocation thisId = Registry.BLOCK.getKey(this); ResourceLocation thisId = BuiltInRegistries.BLOCK.getKey(this);
String path = blockId.getPath(); String path = blockId.getPath();
Optional<String> pattern = Optional.empty(); Optional<String> pattern = Optional.empty();
if (path.endsWith("_post")) { if (path.endsWith("_post")) {

View file

@ -7,7 +7,7 @@ import org.betterx.bclib.client.models.PatternsHelper;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.enchantment.EnchantmentHelper; import net.minecraft.world.item.enchantment.EnchantmentHelper;
@ -78,7 +78,7 @@ public class BasePathBlock extends BaseBlockNotFull {
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
String name = blockId.getPath(); String name = blockId.getPath();
ResourceLocation bottomId = Registry.BLOCK.getKey(baseBlock); ResourceLocation bottomId = BuiltInRegistries.BLOCK.getKey(baseBlock);
String bottom = bottomId.getNamespace() + ":block/" + bottomId.getPath(); String bottom = bottomId.getNamespace() + ":block/" + bottomId.getPath();
Map<String, String> textures = Maps.newHashMap(); Map<String, String> textures = Maps.newHashMap();
textures.put("%modid%", blockId.getNamespace()); textures.put("%modid%", blockId.getNamespace());

View file

@ -7,7 +7,7 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
@ -51,7 +51,7 @@ public class BasePressurePlateBlock extends PressurePlateBlock implements BlockM
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern; Optional<String> pattern;
if (blockState.getValue(POWERED)) { if (blockState.getValue(POWERED)) {
pattern = PatternsHelper.createJson(BasePatterns.BLOCK_PLATE_DOWN, parentId); pattern = PatternsHelper.createJson(BasePatterns.BLOCK_PLATE_DOWN, parentId);

View file

@ -9,7 +9,7 @@ import org.betterx.bclib.util.BlocksHelper;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.network.protocol.game.ClientboundOpenSignEditorPacket; import net.minecraft.network.protocol.game.ClientboundOpenSignEditorPacket;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
@ -163,7 +163,7 @@ public class BaseSignBlock extends SignBlock implements BlockModelProvider, Cust
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
return ModelsHelper.createBlockEmpty(parentId); return ModelsHelper.createBlockEmpty(parentId);
} }

View file

@ -9,7 +9,7 @@ import org.betterx.bclib.interfaces.CustomItemProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.BlockModelRotation; import net.minecraft.client.resources.model.BlockModelRotation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.BlockItem;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
@ -59,7 +59,7 @@ public class BaseSlabBlock extends SlabBlock implements BlockModelProvider, Cust
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern; Optional<String> pattern;
if (blockState.getValue(TYPE) == SlabType.DOUBLE) { if (blockState.getValue(TYPE) == SlabType.DOUBLE) {
pattern = PatternsHelper.createBlockSimple(parentId); pattern = PatternsHelper.createBlockSimple(parentId);

View file

@ -9,7 +9,7 @@ import org.betterx.bclib.interfaces.CustomItemProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.BlockModelRotation; import net.minecraft.client.resources.model.BlockModelRotation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.BlockItem;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
@ -59,7 +59,7 @@ public class BaseStairsBlock extends StairBlock implements BlockModelProvider, C
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern = PatternsHelper.createJson(switch (blockState.getValue(SHAPE)) { Optional<String> pattern = PatternsHelper.createJson(switch (blockState.getValue(SHAPE)) {
case STRAIGHT -> BasePatterns.BLOCK_STAIR; case STRAIGHT -> BasePatterns.BLOCK_STAIR;
case INNER_LEFT, INNER_RIGHT -> BasePatterns.BLOCK_STAIR_INNER; case INNER_LEFT, INNER_RIGHT -> BasePatterns.BLOCK_STAIR_INNER;

View file

@ -11,7 +11,7 @@ import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerLevel;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
@ -138,7 +138,7 @@ public class BaseTerrainBlock extends BaseBlock {
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
ResourceLocation baseId = Registry.BLOCK.getKey(getBaseBlock()); ResourceLocation baseId = BuiltInRegistries.BLOCK.getKey(getBaseBlock());
String modId = blockId.getNamespace(); String modId = blockId.getNamespace();
String path = blockId.getPath(); String path = blockId.getPath();
String bottom = baseId.getNamespace() + ":block/" + baseId.getPath(); String bottom = baseId.getNamespace() + ":block/" + baseId.getPath();

View file

@ -8,7 +8,7 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.BlockModelRotation; import net.minecraft.client.resources.model.BlockModelRotation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -43,7 +43,7 @@ public class BaseWallBlock extends WallBlock implements BlockModelProvider {
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public BlockModel getItemModel(ResourceLocation blockId) { public BlockModel getItemModel(ResourceLocation blockId) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern = PatternsHelper.createJson(BasePatterns.ITEM_WALL, parentId); Optional<String> pattern = PatternsHelper.createJson(BasePatterns.ITEM_WALL, parentId);
return ModelsHelper.fromPattern(pattern); return ModelsHelper.fromPattern(pattern);
} }
@ -51,7 +51,7 @@ public class BaseWallBlock extends WallBlock implements BlockModelProvider {
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation blockId, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
String path = blockId.getPath(); String path = blockId.getPath();
Optional<String> pattern = Optional.empty(); Optional<String> pattern = Optional.empty();
if (path.endsWith("_post")) { if (path.endsWith("_post")) {

View file

@ -7,7 +7,7 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
@ -56,7 +56,7 @@ public class BaseWeightedPlateBlock extends WeightedPressurePlateBlock implement
@Override @Override
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) { public @Nullable BlockModel getBlockModel(ResourceLocation resourceLocation, BlockState blockState) {
ResourceLocation parentId = Registry.BLOCK.getKey(parent); ResourceLocation parentId = BuiltInRegistries.BLOCK.getKey(parent);
Optional<String> pattern; Optional<String> pattern;
if (blockState.getValue(POWER) > 0) { if (blockState.getValue(POWER) > 0) {
pattern = PatternsHelper.createJson(BasePatterns.BLOCK_PLATE_DOWN, parentId); pattern = PatternsHelper.createJson(BasePatterns.BLOCK_PLATE_DOWN, parentId);

View file

@ -1,7 +1,7 @@
package org.betterx.bclib.blocks; package org.betterx.bclib.blocks;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.chat.MutableComponent;
import net.minecraft.util.FormattedCharSequence; import net.minecraft.util.FormattedCharSequence;
import net.minecraft.world.item.Tiers; import net.minecraft.world.item.Tiers;
@ -31,7 +31,7 @@ public class LeveledAnvilBlock extends BaseAnvilBlock {
} }
public static List<Block> getAnvils() { public static List<Block> getAnvils() {
return Registry.BLOCK return BuiltInRegistries.BLOCK
.stream() .stream()
.filter(b -> b instanceof LeveledAnvilBlock || b == Blocks.ANVIL) .filter(b -> b instanceof LeveledAnvilBlock || b == Blocks.ANVIL)
.toList(); .toList();

View file

@ -9,7 +9,6 @@ import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.client.renderer.block.model.multipart.MultiPart; import net.minecraft.client.renderer.block.model.multipart.MultiPart;
import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
import net.minecraft.core.Registry;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.server.packs.resources.ResourceManager;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -32,38 +31,44 @@ public class CustomModelBakery {
} }
public void loadCustomModels(ResourceManager resourceManager) { public void loadCustomModels(ResourceManager resourceManager) {
Registry.BLOCK.stream().parallel().filter(block -> block instanceof BlockModelProvider).forEach(block -> { BuiltInRegistries.BLOCK.stream()
ResourceLocation blockID = Registry.BLOCK.getKey(block); .parallel()
ResourceLocation storageID = new ResourceLocation( .filter(block -> block instanceof BlockModelProvider)
blockID.getNamespace(), .forEach(block -> {
"blockstates/" + blockID.getPath() + ".json" ResourceLocation blockID = BuiltInRegistries.BLOCK.getKey(block);
); ResourceLocation storageID = new ResourceLocation(
if (resourceManager.getResource(storageID).isEmpty()) { blockID.getNamespace(),
addBlockModel(blockID, block); "blockstates/" + blockID.getPath() + ".json"
} );
storageID = new ResourceLocation(blockID.getNamespace(), "models/item/" + blockID.getPath() + ".json"); if (resourceManager.getResource(storageID).isEmpty()) {
if (resourceManager.getResource(storageID).isEmpty()) { addBlockModel(blockID, block);
addItemModel(blockID, (ItemModelProvider) block); }
} storageID = new ResourceLocation(
}); blockID.getNamespace(),
"models/item/" + blockID.getPath() + ".json"
);
if (resourceManager.getResource(storageID).isEmpty()) {
addItemModel(blockID, (ItemModelProvider) block);
}
});
Registry.ITEM.stream() BuiltInRegistries.ITEM.stream()
.parallel() .parallel()
.filter(item -> item instanceof ItemModelProvider || RecordItemModelProvider.has(item)) .filter(item -> item instanceof ItemModelProvider || RecordItemModelProvider.has(item))
.forEach(item -> { .forEach(item -> {
ResourceLocation registryID = Registry.ITEM.getKey(item); ResourceLocation registryID = BuiltInRegistries.ITEM.getKey(item);
ResourceLocation storageID = new ResourceLocation( ResourceLocation storageID = new ResourceLocation(
registryID.getNamespace(), registryID.getNamespace(),
"models/item/" + registryID.getPath() + ".json" "models/item/" + registryID.getPath() + ".json"
); );
final ItemModelProvider provider = (item instanceof ItemModelProvider) final ItemModelProvider provider = (item instanceof ItemModelProvider)
? (ItemModelProvider) item ? (ItemModelProvider) item
: RecordItemModelProvider.get(item); : RecordItemModelProvider.get(item);
if (resourceManager.getResource(storageID).isEmpty()) { if (resourceManager.getResource(storageID).isEmpty()) {
addItemModel(registryID, provider); addItemModel(registryID, provider);
} }
}); });
} }
private void addBlockModel(ResourceLocation blockID, Block block) { private void addBlockModel(ResourceLocation blockID, Block block) {

View file

@ -13,7 +13,6 @@ import net.minecraft.client.renderer.blockentity.BlockEntityRenderer;
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider;
import net.minecraft.client.renderer.blockentity.BrightnessCombiner; import net.minecraft.client.renderer.blockentity.BrightnessCombiner;
import net.minecraft.core.Direction; import net.minecraft.core.Direction;
import net.minecraft.core.Registry;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.*; import net.minecraft.world.level.block.*;
@ -165,7 +164,7 @@ public class BaseChestBlockEntityRenderer implements BlockEntityRenderer<BaseChe
} }
public static void registerRenderLayer(Block block) { public static void registerRenderLayer(Block block) {
ResourceLocation blockId = Registry.BLOCK.getKey(block); ResourceLocation blockId = BuiltInRegistries.BLOCK.getKey(block);
String modId = blockId.getNamespace(); String modId = blockId.getNamespace();
String path = blockId.getPath(); String path = blockId.getPath();
LAYERS.put( LAYERS.put(

View file

@ -18,7 +18,6 @@ import net.minecraft.client.renderer.blockentity.BlockEntityRenderer;
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider;
import net.minecraft.client.renderer.blockentity.SignRenderer; import net.minecraft.client.renderer.blockentity.SignRenderer;
import net.minecraft.client.resources.model.Material; import net.minecraft.client.resources.model.Material;
import net.minecraft.core.Registry;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.FormattedCharSequence; import net.minecraft.util.FormattedCharSequence;
import net.minecraft.util.Mth; import net.minecraft.util.Mth;
@ -181,7 +180,7 @@ public class BaseSignBlockEntityRenderer implements BlockEntityRenderer<BaseSign
} }
public static void registerRenderLayer(Block block) { public static void registerRenderLayer(Block block) {
ResourceLocation blockId = Registry.BLOCK.getKey(block); ResourceLocation blockId = BuiltInRegistries.BLOCK.getKey(block);
RenderType layer = RenderType.entitySolid(new ResourceLocation( RenderType layer = RenderType.entitySolid(new ResourceLocation(
blockId.getNamespace(), blockId.getNamespace(),
"textures/entity/sign/" + blockId.getPath() + ".png" "textures/entity/sign/" + blockId.getPath() + ".png"

View file

@ -5,7 +5,8 @@ import org.betterx.worlds.together.tag.v3.TagManager;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.TagKey; import net.minecraft.tags.TagKey;
@ -38,15 +39,15 @@ public abstract class ModIntegration {
} }
public ResourceKey<PlacedFeature> getFeatureKey(String name) { public ResourceKey<PlacedFeature> getFeatureKey(String name) {
return ResourceKey.create(Registry.PLACED_FEATURE_REGISTRY, getID(name)); return ResourceKey.create(Registries.PLACED_FEATURE, getID(name));
} }
public Block getBlock(String name) { public Block getBlock(String name) {
return Registry.BLOCK.get(getID(name)); return BuiltInRegistries.BLOCK.get(getID(name));
} }
public Item getItem(String name) { public Item getItem(String name) {
return Registry.ITEM.get(getID(name)); return BuiltInRegistries.ITEM.get(getID(name));
} }
public BlockState getDefaultState(String name) { public BlockState getDefaultState(String name) {
@ -63,11 +64,11 @@ public abstract class ModIntegration {
public ConfiguredFeature<?, ?> getConfiguredFeature(String name) { public ConfiguredFeature<?, ?> getConfiguredFeature(String name) {
return BuiltinRegistries.CONFIGURED_FEATURE.get(getID(name)); return BuiltInRegistries.CONFIGURED_FEATURE.get(getID(name));
} }
public Holder<Biome> getBiome(String name) { public Holder<Biome> getBiome(String name) {
return BuiltinRegistries.BIOME.getHolder(getKey(name)).orElseThrow(); return BuiltInRegistries.BIOME.getHolder(getKey(name)).orElseThrow();
} }
public Class<?> getClass(String path) { public Class<?> getClass(String path) {

View file

@ -1,6 +1,5 @@
package org.betterx.bclib.interfaces; package org.betterx.bclib.interfaces;
import net.minecraft.core.Registry;
import net.minecraft.tags.TagKey; import net.minecraft.tags.TagKey;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -18,7 +17,7 @@ public interface SurvivesOnTags extends SurvivesOnSpecialGround {
default String getSurvivableBlocksString() { default String getSurvivableBlocksString() {
return getSurvivableTags() return getSurvivableTags()
.stream() .stream()
.map(tag -> Registry.BLOCK.getTag(tag)) .map(tag -> BuiltInRegistries.BLOCK.getTag(tag))
.filter(named -> named.isPresent()) .filter(named -> named.isPresent())
.map(named -> named.get()) .map(named -> named.get())
.flatMap(named -> named.stream()) .flatMap(named -> named.stream())

View file

@ -5,7 +5,6 @@ import org.betterx.bclib.interfaces.BlockModelProvider;
import org.betterx.bclib.interfaces.ItemModelProvider; import org.betterx.bclib.interfaces.ItemModelProvider;
import net.minecraft.client.renderer.block.model.BlockModel; import net.minecraft.client.renderer.block.model.BlockModel;
import net.minecraft.core.Registry;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.BlockItem;
@ -73,7 +72,7 @@ public class BaseAnvilItem extends BlockItem implements ItemModelProvider {
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public BlockModel getItemModel(ResourceLocation resourceLocation) { public BlockModel getItemModel(ResourceLocation resourceLocation) {
Block anvilBlock = getBlock(); Block anvilBlock = getBlock();
ResourceLocation blockId = Registry.BLOCK.getKey(anvilBlock); ResourceLocation blockId = BuiltInRegistries.BLOCK.getKey(anvilBlock);
return ((BlockModelProvider) anvilBlock).getBlockModel(blockId, anvilBlock.defaultBlockState()); return ((BlockModelProvider) anvilBlock).getBlockModel(blockId, anvilBlock.defaultBlockState());
} }
} }

View file

@ -8,7 +8,6 @@ import net.minecraft.client.color.block.BlockColors;
import net.minecraft.client.color.item.ItemColors; import net.minecraft.client.color.item.ItemColors;
import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.Screen;
import net.minecraft.client.main.GameConfig; import net.minecraft.client.main.GameConfig;
import net.minecraft.core.Registry;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
@ -36,7 +35,7 @@ public abstract class MinecraftMixin {
@Inject(method = "<init>*", at = @At("TAIL")) @Inject(method = "<init>*", at = @At("TAIL"))
private void bclib_onMCInit(GameConfig args, CallbackInfo info) { private void bclib_onMCInit(GameConfig args, CallbackInfo info) {
Registry.BLOCK.forEach(block -> { BuiltInRegistries.BLOCK.forEach(block -> {
if (block instanceof CustomColorProvider provider) { if (block instanceof CustomColorProvider provider) {
blockColors.register(provider.getProvider(), block); blockColors.register(provider.getProvider(), block);
itemColors.register(provider.getItemProvider(), block.asItem()); itemColors.register(provider.getItemProvider(), block.asItem());

View file

@ -6,7 +6,7 @@ import com.mojang.serialization.Lifecycle;
import net.minecraft.core.MappedRegistry; import net.minecraft.core.MappedRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.WritableRegistry; import net.minecraft.core.WritableRegistry;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
@ -15,13 +15,13 @@ import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(BuiltinRegistries.class) @Mixin(BuiltInRegistries.class)
public abstract class BuiltinRegistriesMixin { public abstract class BuiltinRegistriesMixin {
@Shadow @Shadow
protected static <T, R extends WritableRegistry<T>> R internalRegister( protected static <T, R extends WritableRegistry<T>> R internalRegister(
ResourceKey<? extends Registry<T>> resourceKey, ResourceKey<? extends Registry<T>> resourceKey,
R writableRegistry, R writableRegistry,
BuiltinRegistries.RegistryBootstrap<T> registryBootstrap, BuiltInRegistries.RegistryBootstrap<T> registryBootstrap,
Lifecycle lifecycle Lifecycle lifecycle
) { ) {
throw new RuntimeException("Shadowed Call"); throw new RuntimeException("Shadowed Call");

View file

@ -3,7 +3,6 @@ package org.betterx.bclib.recipes;
import org.betterx.bclib.api.v2.advancement.AdvancementManager; import org.betterx.bclib.api.v2.advancement.AdvancementManager;
import net.minecraft.advancements.RequirementsStrategy; import net.minecraft.advancements.RequirementsStrategy;
import net.minecraft.core.Registry;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.TagKey; import net.minecraft.tags.TagKey;
import net.minecraft.world.item.ArmorItem; import net.minecraft.world.item.ArmorItem;
@ -105,8 +104,8 @@ public class AbstractAdvancementRecipe {
String name = "has_" + (nameCounter++) + "_" + String name = "has_" + (nameCounter++) + "_" +
Arrays.stream(items) Arrays.stream(items)
.map(block -> (block instanceof Block) .map(block -> (block instanceof Block)
? Registry.BLOCK.getKey((Block) block) ? BuiltInRegistries.BLOCK.getKey((Block) block)
: Registry.ITEM.getKey((Item) block)) : BuiltInRegistries.ITEM.getKey((Item) block))
.filter(id -> id != null) .filter(id -> id != null)
.map(id -> id.getPath()) .map(id -> id.getPath())
.collect(Collectors.joining("_")); .collect(Collectors.joining("_"));

View file

@ -209,10 +209,10 @@ public class AnvilRecipe implements Recipe<Container>, UnknownReceipBookCategory
@Override @Override
public NonNullList<Ingredient> getIngredients() { public NonNullList<Ingredient> getIngredients() {
NonNullList<Ingredient> defaultedList = NonNullList.create(); NonNullList<Ingredient> defaultedList = NonNullList.create();
defaultedList.add(Ingredient.of(Registry.ITEM.stream() defaultedList.add(Ingredient.of(BuiltInRegistries.ITEM.stream()
.filter(AnvilRecipe::isHammer) .filter(AnvilRecipe::isHammer)
.filter(this::canUse) .filter(this::canUse)
.map(ItemStack::new)) .map(ItemStack::new))
); );
defaultedList.add(input); defaultedList.add(input);
return defaultedList; return defaultedList;

View file

@ -117,9 +117,9 @@ public class BCLRecipeManager {
public static boolean exists(ItemLike item) { public static boolean exists(ItemLike item) {
if (item instanceof Block) { if (item instanceof Block) {
return Registry.BLOCK.getKey((Block) item) != Registry.BLOCK.getDefaultKey(); return BuiltInRegistries.BLOCK.getKey((Block) item) != BuiltInRegistries.BLOCK.getDefaultKey();
} else { } else {
return item != Items.AIR && Registry.ITEM.getKey(item.asItem()) != Registry.ITEM.getDefaultKey(); return item != Items.AIR && BuiltInRegistries.ITEM.getKey(item.asItem()) != BuiltInRegistries.ITEM.getDefaultKey();
} }
} }

View file

@ -2,7 +2,7 @@ package org.betterx.bclib.util;
import org.betterx.bclib.BCLib; import org.betterx.bclib.BCLib;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.GsonHelper; import net.minecraft.util.GsonHelper;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
@ -21,7 +21,7 @@ public class ItemUtil {
throw new IllegalStateException("Stack can't be null!"); throw new IllegalStateException("Stack can't be null!");
} }
Item item = stack.getItem(); Item item = stack.getItem();
return Registry.ITEM.getKey(item) + ":" + stack.getCount(); return BuiltInRegistries.ITEM.getKey(item) + ":" + stack.getCount();
} catch (Exception ex) { } catch (Exception ex) {
BCLib.LOGGER.error("ItemStack serialization error!", ex); BCLib.LOGGER.error("ItemStack serialization error!", ex);
} }
@ -38,13 +38,13 @@ public class ItemUtil {
if (parts.length < 2) return null; if (parts.length < 2) return null;
if (parts.length == 2) { if (parts.length == 2) {
ResourceLocation itemId = new ResourceLocation(stackString); ResourceLocation itemId = new ResourceLocation(stackString);
Item item = Registry.ITEM.getOptional(itemId).orElseThrow(() -> { Item item = BuiltInRegistries.ITEM.getOptional(itemId).orElseThrow(() -> {
return new IllegalStateException("Output item " + itemId + " does not exists!"); return new IllegalStateException("Output item " + itemId + " does not exists!");
}); });
return new ItemStack(item); return new ItemStack(item);
} }
ResourceLocation itemId = new ResourceLocation(parts[0], parts[1]); ResourceLocation itemId = new ResourceLocation(parts[0], parts[1]);
Item item = Registry.ITEM.getOptional(itemId).orElseThrow(() -> { Item item = BuiltInRegistries.ITEM.getOptional(itemId).orElseThrow(() -> {
return new IllegalStateException("Output item " + itemId + " does not exists!"); return new IllegalStateException("Output item " + itemId + " does not exists!");
}); });
return new ItemStack(item, Integer.valueOf(parts[2])); return new ItemStack(item, Integer.valueOf(parts[2]));
@ -61,7 +61,7 @@ public class ItemUtil {
throw new IllegalStateException("Invalid JsonObject. Entry 'item' does not exists!"); throw new IllegalStateException("Invalid JsonObject. Entry 'item' does not exists!");
} }
ResourceLocation itemId = new ResourceLocation(GsonHelper.getAsString(recipe, "item")); ResourceLocation itemId = new ResourceLocation(GsonHelper.getAsString(recipe, "item"));
Item item = Registry.ITEM.getOptional(itemId).orElseThrow(() -> { Item item = BuiltInRegistries.ITEM.getOptional(itemId).orElseThrow(() -> {
return new IllegalStateException("Output item " + itemId + " does not exists!"); return new IllegalStateException("Output item " + itemId + " does not exists!");
}); });
int count = GsonHelper.getAsInt(recipe, "count", 1); int count = GsonHelper.getAsInt(recipe, "count", 1);

View file

@ -1,15 +1,15 @@
package org.betterx.bclib.util; package org.betterx.bclib.util;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.ItemLike;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
public class RecipeHelper { public class RecipeHelper {
public static boolean exists(ItemLike item) { public static boolean exists(ItemLike item) {
if (item instanceof Block) { if (item instanceof Block) {
return Registry.BLOCK.getKey((Block) item) != Registry.BLOCK.getDefaultKey(); return BuiltInRegistries.BLOCK.getKey((Block) item) != BuiltInRegistries.BLOCK.getDefaultKey();
} else { } else {
return Registry.ITEM.getKey(item.asItem()) != Registry.ITEM.getDefaultKey(); return BuiltInRegistries.ITEM.getKey(item.asItem()) != BuiltInRegistries.ITEM.getDefaultKey();
} }
} }

View file

@ -2,8 +2,8 @@ package org.betterx.bclib.util;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.core.HolderLookup; import net.minecraft.core.HolderLookup;
import net.minecraft.core.Registry;
import net.minecraft.core.Vec3i; import net.minecraft.core.Vec3i;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.NbtIo; import net.minecraft.nbt.NbtIo;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
@ -69,7 +69,7 @@ public class StructureHelper {
CompoundTag nbttagcompound = NbtIo.readCompressed(stream); CompoundTag nbttagcompound = NbtIo.readCompressed(stream);
StructureTemplate template = new StructureTemplate(); StructureTemplate template = new StructureTemplate();
template.load(HolderLookup.forRegistry(Registry.BLOCK), nbttagcompound); template.load(HolderLookup.forRegistry(BuiltInRegistries.BLOCK), nbttagcompound);
return template; return template;
} }

View file

@ -1,7 +1,7 @@
package org.betterx.bclib.util; package org.betterx.bclib.util;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
@ -37,8 +37,8 @@ public class TranslationHelper {
? new JsonObject() ? new JsonObject()
: gson.fromJson(new InputStreamReader(inputStream), JsonObject.class); : gson.fromJson(new InputStreamReader(inputStream), JsonObject.class);
Registry.BLOCK.forEach(block -> { BuiltInRegistries.BLOCK.forEach(block -> {
if (Registry.BLOCK.getKey(block).getNamespace().equals(modID)) { if (BuiltInRegistries.BLOCK.getKey(block).getNamespace().equals(modID)) {
String name = block.getName().getString(); String name = block.getName().getString();
if (!translation.has(name)) { if (!translation.has(name)) {
missingNames.add(name); missingNames.add(name);
@ -46,8 +46,8 @@ public class TranslationHelper {
} }
}); });
Registry.ITEM.forEach(item -> { BuiltInRegistries.ITEM.forEach(item -> {
if (Registry.ITEM.getKey(item).getNamespace().equals(modID)) { if (BuiltInRegistries.ITEM.getKey(item).getNamespace().equals(modID)) {
String name = item.getDescription().getString(); String name = item.getDescription().getString();
if (!translation.has(name)) { if (!translation.has(name)) {
missingNames.add(name); missingNames.add(name);

View file

@ -6,7 +6,7 @@ import org.betterx.bclib.util.MHelper;
import com.mojang.blaze3d.platform.NativeImage; import com.mojang.blaze3d.platform.NativeImage;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.server.packs.resources.ResourceManager;
import net.minecraft.util.Mth; import net.minecraft.util.Mth;
@ -299,8 +299,8 @@ public class ColorUtil {
@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
public static int extractColor(Item item) { public static int extractColor(Item item) {
ResourceLocation id = Registry.ITEM.getKey(item); ResourceLocation id = BuiltInRegistries.ITEM.getKey(item);
if (id.equals(Registry.ITEM.getDefaultKey())) return -1; if (id.equals(BuiltInRegistries.ITEM.getDefaultKey())) return -1;
if (colorPalette.containsKey(id)) { if (colorPalette.containsKey(id)) {
return colorPalette.get(id); return colorPalette.get(id);
} }

View file

@ -3,7 +3,7 @@ package org.betterx.worlds.together.flatLevel;
import org.betterx.worlds.together.tag.v3.TagManager; import org.betterx.worlds.together.tag.v3.TagManager;
import org.betterx.worlds.together.tag.v3.TagRegistry; import org.betterx.worlds.together.tag.v3.TagRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.FlatLevelGeneratorPresetTags; import net.minecraft.tags.FlatLevelGeneratorPresetTags;
@ -12,7 +12,7 @@ import net.minecraft.world.level.levelgen.flat.FlatLevelGeneratorPreset;
public class FlatLevelPresets { public class FlatLevelPresets {
public static TagRegistry.Simple<FlatLevelGeneratorPreset> FLAT_LEVEL_PRESETS = public static TagRegistry.Simple<FlatLevelGeneratorPreset> FLAT_LEVEL_PRESETS =
TagManager.registerType( TagManager.registerType(
Registry.FLAT_LEVEL_GENERATOR_PRESET_REGISTRY, Registries.FLAT_LEVEL_GENERATOR_PRESET,
"tags/worldgen/flat_level_generator_preset", "tags/worldgen/flat_level_generator_preset",
(b) -> null (b) -> null
); );
@ -20,7 +20,7 @@ public class FlatLevelPresets {
public static ResourceKey<FlatLevelGeneratorPreset> register(ResourceLocation loc) { public static ResourceKey<FlatLevelGeneratorPreset> register(ResourceLocation loc) {
ResourceKey<FlatLevelGeneratorPreset> key = ResourceKey.create( ResourceKey<FlatLevelGeneratorPreset> key = ResourceKey.create(
Registry.FLAT_LEVEL_GENERATOR_PRESET_REGISTRY, Registries.FLAT_LEVEL_GENERATOR_PRESET,
loc loc
); );
FLAT_LEVEL_PRESETS.addUntyped(FlatLevelGeneratorPresetTags.VISIBLE, key.location()); FLAT_LEVEL_PRESETS.addUntyped(FlatLevelGeneratorPresetTags.VISIBLE, key.location());

View file

@ -14,6 +14,7 @@ import org.betterx.worlds.together.worldPreset.WorldPresets;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.core.registries.Registries;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
@ -44,7 +45,7 @@ public class WorldGenUtil {
boolean generateBonusChest boolean generateBonusChest
) { ) {
WorldDimensions settings = registryAccess WorldDimensions settings = registryAccess
.registryOrThrow(Registry.WORLD_PRESET_REGISTRY) .registryOrThrow(Registries.WORLD_PRESET)
.getHolderOrThrow(preset) .getHolderOrThrow(preset)
.value() .value()
.createWorldDimensions(); .createWorldDimensions();
@ -201,7 +202,7 @@ public class WorldGenUtil {
ResourceLocation id = null; ResourceLocation id = null;
RegistryAccess access = WorldBootstrap.getLastRegistryAccessOrElseBuiltin(); RegistryAccess access = WorldBootstrap.getLastRegistryAccessOrElseBuiltin();
id = access.registryOrThrow(Registry.BIOME_REGISTRY).getKey(biome); id = access.registryOrThrow(Registries.BIOME).getKey(biome);
if (id == null) { if (id == null) {
WorldsTogether.LOGGER.error("Unable to get ID for " + biome + "."); WorldsTogether.LOGGER.error("Unable to get ID for " + biome + ".");

View file

@ -3,7 +3,7 @@ package org.betterx.worlds.together.mixin.common;
import org.betterx.worlds.together.surfaceRules.SurfaceRuleRegistry; import org.betterx.worlds.together.surfaceRules.SurfaceRuleRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
@ -12,7 +12,7 @@ import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(BuiltinRegistries.class) @Mixin(BuiltInRegistries.class)
public class BuiltinRegistriesMixin { public class BuiltinRegistriesMixin {
@Inject(method = "<clinit>", at = @At(value = "INVOKE", target = "Ljava/util/Map;forEach(Ljava/util/function/BiConsumer;)V")) @Inject(method = "<clinit>", at = @At(value = "INVOKE", target = "Ljava/util/Map;forEach(Ljava/util/function/BiConsumer;)V"))
@ -25,7 +25,7 @@ public class BuiltinRegistriesMixin {
@Shadow @Shadow
static protected <T> Registry<T> registerSimple( static protected <T> Registry<T> registerSimple(
ResourceKey<? extends Registry<T>> resourceKey, BuiltinRegistries.RegistryBootstrap<T> registryBootstrap ResourceKey<? extends Registry<T>> resourceKey, BuiltInRegistries.RegistryBootstrap<T> registryBootstrap
) { ) {
throw new RuntimeException("Shadowed Call"); throw new RuntimeException("Shadowed Call");
} }

View file

@ -4,6 +4,7 @@ import org.betterx.worlds.together.world.event.WorldBootstrap;
import net.minecraft.core.LayeredRegistryAccess; import net.minecraft.core.LayeredRegistryAccess;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries;
import net.minecraft.server.MinecraftServer; import net.minecraft.server.MinecraftServer;
import net.minecraft.server.RegistryLayer; import net.minecraft.server.RegistryLayer;
import net.minecraft.server.level.progress.ChunkProgressListener; import net.minecraft.server.level.progress.ChunkProgressListener;
@ -29,7 +30,7 @@ public class MinecraftServerMixin {
@Inject(method = "createLevels", at = @At(value = "HEAD")) @Inject(method = "createLevels", at = @At(value = "HEAD"))
private void together_addSurfaceRules(ChunkProgressListener worldGenerationProgressListener, CallbackInfo ci) { private void together_addSurfaceRules(ChunkProgressListener worldGenerationProgressListener, CallbackInfo ci) {
final Registry<LevelStem> dimensionRegistry = this.registries.compositeAccess() final Registry<LevelStem> dimensionRegistry = this.registries.compositeAccess()
.registryOrThrow(Registry.LEVEL_STEM_REGISTRY); .registryOrThrow(Registries.LEVEL_STEM);
WorldBootstrap.finalizeWorldGenSettings(dimensionRegistry); WorldBootstrap.finalizeWorldGenSettings(dimensionRegistry);
} }
} }

View file

@ -5,6 +5,7 @@ import org.betterx.worlds.together.chunkgenerator.ChunkGeneratorUtils;
import com.mojang.datafixers.DataFixer; import com.mojang.datafixers.DataFixer;
import net.minecraft.core.LayeredRegistryAccess; import net.minecraft.core.LayeredRegistryAccess;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries;
import net.minecraft.server.MinecraftServer; import net.minecraft.server.MinecraftServer;
import net.minecraft.server.RegistryLayer; import net.minecraft.server.RegistryLayer;
import net.minecraft.server.Services; import net.minecraft.server.Services;
@ -42,7 +43,7 @@ public class MinecraftServerMixinLate {
CallbackInfo ci CallbackInfo ci
) { ) {
final Registry<LevelStem> dimensionRegistry = this.registries.compositeAccess() final Registry<LevelStem> dimensionRegistry = this.registries.compositeAccess()
.registryOrThrow(Registry.LEVEL_STEM_REGISTRY); .registryOrThrow(Registries.LEVEL_STEM);
ChunkGeneratorUtils.restoreOriginalBiomeSourceInAllDimension(dimensionRegistry); ChunkGeneratorUtils.restoreOriginalBiomeSourceInAllDimension(dimensionRegistry);
} }
} }

View file

@ -5,7 +5,7 @@ import org.betterx.worlds.together.worldPreset.TogetherWorldPreset;
import com.mojang.datafixers.kinds.App; import com.mojang.datafixers.kinds.App;
import com.mojang.serialization.Codec; import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder; import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.world.level.dimension.LevelStem; import net.minecraft.world.level.dimension.LevelStem;
import net.minecraft.world.level.levelgen.presets.WorldPreset; import net.minecraft.world.level.levelgen.presets.WorldPreset;
@ -29,7 +29,7 @@ public class WorldPresetMixin {
final Function<RecordCodecBuilder.Instance<WorldPreset>, App<RecordCodecBuilder.Mu<WorldPreset>, WorldPreset>> CODEC_FUNCTION = builderInstance -> { final Function<RecordCodecBuilder.Instance<WorldPreset>, App<RecordCodecBuilder.Mu<WorldPreset>, WorldPreset>> CODEC_FUNCTION = builderInstance -> {
RecordCodecBuilder<WorldPreset, Map<ResourceKey<LevelStem>, LevelStem>> dimensionsBuilder = Codec RecordCodecBuilder<WorldPreset, Map<ResourceKey<LevelStem>, LevelStem>> dimensionsBuilder = Codec
.unboundedMap( .unboundedMap(
ResourceKey.codec(Registry.LEVEL_STEM_REGISTRY), ResourceKey.codec(Registries.LEVEL_STEM),
LevelStem.CODEC LevelStem.CODEC
) )
.fieldOf("dimensions") .fieldOf("dimensions")

View file

@ -4,7 +4,8 @@ import org.betterx.worlds.together.WorldsTogether;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.Blocks;
@ -28,7 +29,7 @@ public class SurfaceRuleRegistry {
@ApiStatus.Internal @ApiStatus.Internal
public static Holder<AssignedSurfaceRule> bootstrap(Registry<AssignedSurfaceRule> registry) { public static Holder<AssignedSurfaceRule> bootstrap(Registry<AssignedSurfaceRule> registry) {
return BuiltinRegistries.register( return BuiltInRegistries.register(
registry, registry,
WorldsTogether.makeID("dummy"), WorldsTogether.makeID("dummy"),
new AssignedSurfaceRule( new AssignedSurfaceRule(
@ -49,7 +50,7 @@ public class SurfaceRuleRegistry {
); );
Registry.register(SurfaceRuleRegistry.BUILTIN_SURFACE_RULES, key, new AssignedSurfaceRule( Registry.register(SurfaceRuleRegistry.BUILTIN_SURFACE_RULES, key, new AssignedSurfaceRule(
SurfaceRules.ifTrue( SurfaceRules.ifTrue(
SurfaceRules.isBiome(ResourceKey.create(Registry.BIOME_REGISTRY, biomeID)), SurfaceRules.isBiome(ResourceKey.create(Registries.BIOME, biomeID)),
rules rules
), biomeID ), biomeID
) )

View file

@ -4,6 +4,7 @@ import org.betterx.worlds.together.chunkgenerator.InjectableSurfaceRules;
import org.betterx.worlds.together.world.event.WorldBootstrap; import org.betterx.worlds.together.world.event.WorldBootstrap;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.biome.Biome;
@ -31,7 +32,7 @@ public class SurfaceRuleUtil {
} }
private static List<SurfaceRules.RuleSource> getRulesForBiomes(List<Biome> biomes) { private static List<SurfaceRules.RuleSource> getRulesForBiomes(List<Biome> biomes) {
Registry<Biome> biomeRegistry = WorldBootstrap.getLastRegistryAccess().registryOrThrow(Registry.BIOME_REGISTRY); Registry<Biome> biomeRegistry = WorldBootstrap.getLastRegistryAccess().registryOrThrow(Registries.BIOME);
List<ResourceLocation> biomeIDs = biomes.stream() List<ResourceLocation> biomeIDs = biomes.stream()
.map(b -> biomeRegistry.getKey(b)) .map(b -> biomeRegistry.getKey(b))
.filter(id -> id != null) .filter(id -> id != null)

View file

@ -6,6 +6,7 @@ import org.betterx.worlds.together.world.event.WorldEventsImpl;
import net.minecraft.core.DefaultedRegistry; import net.minecraft.core.DefaultedRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.server.packs.resources.ResourceManager;
@ -24,7 +25,7 @@ import org.jetbrains.annotations.ApiStatus;
public class TagManager { public class TagManager {
private static final Map<String, TagRegistry<?>> TYPES = Maps.newHashMap(); private static final Map<String, TagRegistry<?>> TYPES = Maps.newHashMap();
public static TagRegistry.RegistryBacked<Block> BLOCKS = registerType(Registry.BLOCK); public static TagRegistry.RegistryBacked<Block> BLOCKS = registerType(BuiltInRegistries.BLOCK);
public static TagRegistry.Items ITEMS = registerItem(); public static TagRegistry.Items ITEMS = registerItem();
public static TagRegistry.Biomes BIOMES = registerBiome(); public static TagRegistry.Biomes BIOMES = registerBiome();

View file

@ -4,6 +4,8 @@ import org.betterx.worlds.together.WorldsTogether;
import net.minecraft.core.DefaultedRegistry; import net.minecraft.core.DefaultedRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.TagEntry; import net.minecraft.tags.TagEntry;
@ -79,7 +81,7 @@ public class TagRegistry<T> {
public static class Biomes extends Simple<Biome> { public static class Biomes extends Simple<Biome> {
Biomes(String directory, Function<Biome, ResourceLocation> locationProvider) { Biomes(String directory, Function<Biome, ResourceLocation> locationProvider) {
super(Registry.BIOME_REGISTRY, directory, locationProvider); super(Registries.BIOME, directory, locationProvider);
} }
/** /**
@ -111,7 +113,7 @@ public class TagRegistry<T> {
public static class Items extends RegistryBacked<Item> { public static class Items extends RegistryBacked<Item> {
Items() { Items() {
super(Registry.ITEM); super(BuiltInRegistries.ITEM);
} }
@SafeVarargs @SafeVarargs

View file

@ -17,6 +17,7 @@ import net.minecraft.core.Holder;
import net.minecraft.core.LayeredRegistryAccess; import net.minecraft.core.LayeredRegistryAccess;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.core.registries.Registries;
import net.minecraft.nbt.Tag; import net.minecraft.nbt.Tag;
import net.minecraft.resources.RegistryOps; import net.minecraft.resources.RegistryOps;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
@ -98,7 +99,7 @@ public class WorldBootstrap {
var presetKey = currentPreset.get().unwrapKey(); var presetKey = currentPreset.get().unwrapKey();
if (presetKey.isPresent()) { if (presetKey.isPresent()) {
Optional<Holder.Reference<WorldPreset>> newPreset = LAST_REGISTRY_ACCESS Optional<Holder.Reference<WorldPreset>> newPreset = LAST_REGISTRY_ACCESS
.registryOrThrow(Registry.WORLD_PRESET_REGISTRY) .registryOrThrow(Registries.WORLD_PRESET)
.getHolder(presetKey.get()); .getHolder(presetKey.get());
if (newPreset.isPresent()) currentPreset = (Optional<Holder<WorldPreset>>) (Optional<?>) newPreset; if (newPreset.isPresent()) currentPreset = (Optional<Holder<WorldPreset>>) (Optional<?>) newPreset;
} }
@ -322,7 +323,7 @@ public class WorldBootstrap {
public static LayeredRegistryAccess<RegistryLayer> enforceInLayeredRegistry(LayeredRegistryAccess<RegistryLayer> registries) { public static LayeredRegistryAccess<RegistryLayer> enforceInLayeredRegistry(LayeredRegistryAccess<RegistryLayer> registries) {
RegistryAccess access = registries.compositeAccess(); RegistryAccess access = registries.compositeAccess();
Helpers.onRegistryReady(access); Helpers.onRegistryReady(access);
final Registry<LevelStem> dimensions = access.registryOrThrow(Registry.LEVEL_STEM_REGISTRY); final Registry<LevelStem> dimensions = access.registryOrThrow(Registries.LEVEL_STEM);
final Registry<LevelStem> changedDimensions = WorldGenUtil.repairBiomeSourceInAllDimensions(access, dimensions); final Registry<LevelStem> changedDimensions = WorldGenUtil.repairBiomeSourceInAllDimensions(access, dimensions);
if (dimensions != changedDimensions) { if (dimensions != changedDimensions) {
if (Configs.MAIN_CONFIG.verboseLogging()) { if (Configs.MAIN_CONFIG.verboseLogging()) {

View file

@ -14,7 +14,8 @@ import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.minecraft.core.MappedRegistry; import net.minecraft.core.MappedRegistry;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.NbtOps;
import net.minecraft.nbt.Tag; import net.minecraft.nbt.Tag;
@ -54,7 +55,7 @@ public class TogetherWorldPreset extends WorldPreset {
} }
public static WorldDimensions buildWorldDimensions(Map<ResourceKey<LevelStem>, LevelStem> map) { public static WorldDimensions buildWorldDimensions(Map<ResourceKey<LevelStem>, LevelStem> map) {
Registry<LevelStem> registry = new MappedRegistry<>(Registry.LEVEL_STEM_REGISTRY, Lifecycle.experimental()); Registry<LevelStem> registry = new MappedRegistry<>(Registries.LEVEL_STEM, Lifecycle.experimental());
for (var entry : map.entrySet()) { for (var entry : map.entrySet()) {
Registry.register(registry, entry.getKey(), entry.getValue()); Registry.register(registry, entry.getKey(), entry.getValue());
} }
@ -154,8 +155,8 @@ public class TogetherWorldPreset extends WorldPreset {
public static Registry<LevelStem> getDimensions(ResourceKey<WorldPreset> key) { public static Registry<LevelStem> getDimensions(ResourceKey<WorldPreset> key) {
RegistryAccess access = WorldBootstrap.getLastRegistryAccessOrElseBuiltin(); RegistryAccess access = WorldBootstrap.getLastRegistryAccessOrElseBuiltin();
var preset = (access == null var preset = (access == null
? BuiltinRegistries.WORLD_PRESET ? BuiltInRegistries.WORLD_PRESET
: access.registryOrThrow(Registry.WORLD_PRESET_REGISTRY)) : access.registryOrThrow(Registries.WORLD_PRESET))
.getHolder(key); .getHolder(key);
if (preset.isEmpty()) return null; if (preset.isEmpty()) return null;
return preset return preset
@ -183,7 +184,7 @@ public class TogetherWorldPreset extends WorldPreset {
private static class DimensionsWrapper { private static class DimensionsWrapper {
public static final Codec<DimensionsWrapper> CODEC = RecordCodecBuilder.create(instance -> instance public static final Codec<DimensionsWrapper> CODEC = RecordCodecBuilder.create(instance -> instance
.group(Codec.unboundedMap( .group(Codec.unboundedMap(
ResourceKey.codec(Registry.LEVEL_STEM_REGISTRY), ResourceKey.codec(Registries.LEVEL_STEM),
ChunkGenerator.CODEC ChunkGenerator.CODEC
) )
.fieldOf("dimensions") .fieldOf("dimensions")

View file

@ -11,7 +11,8 @@ import org.betterx.worlds.together.worldPreset.client.WorldPresetsClient;
import net.minecraft.core.Holder; import net.minecraft.core.Holder;
import net.minecraft.core.Registry; import net.minecraft.core.Registry;
import net.minecraft.core.RegistryAccess; import net.minecraft.core.RegistryAccess;
import net.minecraft.data.BuiltinRegistries; import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.WorldPresetTags; import net.minecraft.tags.WorldPresetTags;
@ -26,13 +27,13 @@ import org.jetbrains.annotations.ApiStatus;
public class WorldPresets { public class WorldPresets {
public static final TagRegistry.Simple<WorldPreset> WORLD_PRESETS = public static final TagRegistry.Simple<WorldPreset> WORLD_PRESETS =
TagManager.registerType(BuiltinRegistries.WORLD_PRESET, "tags/worldgen/world_preset"); TagManager.registerType(BuiltInRegistries.WORLD_PRESET, "tags/worldgen/world_preset");
private static Map<ResourceKey<WorldPreset>, PresetBuilder> BUILDERS = Maps.newHashMap(); private static Map<ResourceKey<WorldPreset>, PresetBuilder> BUILDERS = Maps.newHashMap();
private static ResourceKey<WorldPreset> DEFAULT = net.minecraft.world.level.levelgen.presets.WorldPresets.NORMAL; private static ResourceKey<WorldPreset> DEFAULT = net.minecraft.world.level.levelgen.presets.WorldPresets.NORMAL;
public static Holder<WorldPreset> get(RegistryAccess access, ResourceKey<WorldPreset> key) { public static Holder<WorldPreset> get(RegistryAccess access, ResourceKey<WorldPreset> key) {
return access return access
.registryOrThrow(Registry.WORLD_PRESET_REGISTRY) .registryOrThrow(Registries.WORLD_PRESET)
.getHolderOrThrow(key); .getHolderOrThrow(key);
} }
@ -47,7 +48,7 @@ public class WorldPresets {
* @return The key you may use to reference your new Preset * @return The key you may use to reference your new Preset
*/ */
private static ResourceKey<WorldPreset> register(ResourceLocation loc, boolean visibleInUI) { private static ResourceKey<WorldPreset> register(ResourceLocation loc, boolean visibleInUI) {
ResourceKey<WorldPreset> key = ResourceKey.create(Registry.WORLD_PRESET_REGISTRY, loc); ResourceKey<WorldPreset> key = ResourceKey.create(Registries.WORLD_PRESET, loc);
if (visibleInUI) { if (visibleInUI) {
if (!didExplicitlySetDefault && DEFAULT == net.minecraft.world.level.levelgen.presets.WorldPresets.NORMAL) { if (!didExplicitlySetDefault && DEFAULT == net.minecraft.world.level.levelgen.presets.WorldPresets.NORMAL) {
DEFAULT = key; DEFAULT = key;
@ -89,7 +90,7 @@ public class WorldPresets {
for (Map.Entry<ResourceKey<WorldPreset>, PresetBuilder> e : BUILDERS.entrySet()) { for (Map.Entry<ResourceKey<WorldPreset>, PresetBuilder> e : BUILDERS.entrySet()) {
TogetherWorldPreset preset = e.getValue().create(overworldStem, netherContext, endContext); TogetherWorldPreset preset = e.getValue().create(overworldStem, netherContext, endContext);
BuiltinRegistries.register(presets, e.getKey(), preset); BuiltInRegistries.register(presets, e.getKey(), preset);
} }
BUILDERS = null; BUILDERS = null;
} }

View file

@ -10,7 +10,7 @@ accessible class net/minecraft/world/level/levelgen/SurfaceRules$LazyCondition
accessible class net/minecraft/world/level/levelgen/SurfaceRules$SequenceRuleSource accessible class net/minecraft/world/level/levelgen/SurfaceRules$SequenceRuleSource
accessible class net/minecraft/world/level/levelgen/presets/WorldPresets$Bootstrap accessible class net/minecraft/world/level/levelgen/presets/WorldPresets$Bootstrap
extendable class net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator extendable class net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator
accessible class net/minecraft/data/BuiltinRegistries$RegistryBootstrap accessible class net/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap
accessible class net/minecraft/core/Registry$RegistryBootstrap accessible class net/minecraft/core/Registry$RegistryBootstrap
accessible class net/minecraft/world/level/levelgen/SurfaceRules$SequenceRuleSource accessible class net/minecraft/world/level/levelgen/SurfaceRules$SequenceRuleSource
accessible class net/minecraft/server/dedicated/DedicatedServerProperties$WorldDimensionData accessible class net/minecraft/server/dedicated/DedicatedServerProperties$WorldDimensionData