diff --git a/common/src/main/java/dev/architectury/event/events/client/ClientTextureStitchEvent.java b/common/src/main/java/dev/architectury/event/events/client/ClientTextureStitchEvent.java deleted file mode 100644 index e3cf69b6..00000000 --- a/common/src/main/java/dev/architectury/event/events/client/ClientTextureStitchEvent.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * This file is part of architectury. - * Copyright (C) 2020, 2021, 2022 architectury - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -package dev.architectury.event.events.client; - -import dev.architectury.event.Event; -import dev.architectury.event.EventFactory; -import net.fabricmc.api.EnvType; -import net.fabricmc.api.Environment; -import net.minecraft.client.renderer.texture.TextureAtlas; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.packs.resources.Resource; -import net.minecraft.server.packs.resources.ResourceManager; - -import java.util.function.BiConsumer; - -@Environment(EnvType.CLIENT) -public interface ClientTextureStitchEvent { - /** - * @see Pre#stitch(TextureAtlas, ResourceManager, BiConsumer) - */ - Event
PRE = EventFactory.createLoop(); - - /** - * @see Post#stitch(TextureAtlas) - */ -// EventPOST = EventFactory.createLoop(); - - @Environment(EnvType.CLIENT) - interface Pre { - /** - * Invoked before the texture atlas is stitched together. - * Equivalent to Forge's {@code TextureStitchEvent.Pre} event. - * - * @param atlas The TextureAtlas. - * @param resourceManager The resource manager. - * @param spriteAdder A consumer where you can add your own sprites to be stitched. - */ - void stitch(TextureAtlas atlas, ResourceManager resourceManager, BiConsumer spriteAdder); - } - - @Environment(EnvType.CLIENT) - interface Post { - /** - * Invoked after the texture atlas has been fully stitched. - * Equivalent to Forge's {@code TextureStitchEvent.Post} event. - * - * @param atlas The ready-to-use TextureAtlas. - */ - void stitch(TextureAtlas atlas); - } -} diff --git a/common/src/main/java/dev/architectury/registry/CreativeTabRegistry.java b/common/src/main/java/dev/architectury/registry/CreativeTabRegistry.java index e6068760..2601c8bf 100644 --- a/common/src/main/java/dev/architectury/registry/CreativeTabRegistry.java +++ b/common/src/main/java/dev/architectury/registry/CreativeTabRegistry.java @@ -21,7 +21,6 @@ package dev.architectury.registry; import dev.architectury.injectables.annotations.ExpectPlatform; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.flag.FeatureFlagSet; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.ItemLike; @@ -36,14 +35,13 @@ public final class CreativeTabRegistry { // I am sorry, fabric wants a resource location instead of the translation key for whatever reason public static CreativeModeTab create(ResourceLocation name, Supplier icon) { - return create(name, icon, (flags, output, canUseGameMasterBlocks) -> { - }); + return builder(name).icon(icon).build(); } // I am sorry, fabric wants a resource location instead of the translation key for whatever reason @ExpectPlatform @ApiStatus.Experimental - public static CreativeModeTab create(ResourceLocation name, Supplier icon, CreativeTabFiller filler) { + public static CreativeModeTab.Builder builder(ResourceLocation name) { throw new AssertionError(); } @@ -100,8 +98,4 @@ public final class CreativeTabRegistry { public static > void appendStack(CreativeModeTab tab, T... items) { throw new AssertionError(); } - - public interface CreativeTabFiller { - void fill(FeatureFlagSet flags, CreativeModeTab.Output output, boolean canUseGameMasterBlocks); - } } diff --git a/common/src/main/java/dev/architectury/registry/registries/Registries.java b/common/src/main/java/dev/architectury/registry/registries/Registries.java index 8d7961cf..860fc79e 100644 --- a/common/src/main/java/dev/architectury/registry/registries/Registries.java +++ b/common/src/main/java/dev/architectury/registry/registries/Registries.java @@ -21,6 +21,7 @@ package dev.architectury.registry.registries; import dev.architectury.injectables.annotations.ExpectPlatform; import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.ApiStatus; @@ -83,7 +84,7 @@ public final class Registries { public static ResourceLocation getId(T object, @Nullable ResourceKey > fallback) { if (fallback == null) return null; - return getId(object, (Registry ) Registry.REGISTRY.get(fallback.location())); + return getId(object, (Registry ) BuiltInRegistries.REGISTRY.get(fallback.location())); } /** diff --git a/fabric/src/main/java/dev/architectury/hooks/fluid/fabric/FluidStackHooksImpl.java b/fabric/src/main/java/dev/architectury/hooks/fluid/fabric/FluidStackHooksImpl.java index 7eae2fe3..d21dfb7d 100644 --- a/fabric/src/main/java/dev/architectury/hooks/fluid/fabric/FluidStackHooksImpl.java +++ b/fabric/src/main/java/dev/architectury/hooks/fluid/fabric/FluidStackHooksImpl.java @@ -28,7 +28,7 @@ import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariantAttributes; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.core.BlockPos; -import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.network.FriendlyByteBuf; @@ -49,12 +49,12 @@ public class FluidStackHooksImpl { } public static String getTranslationKey(FluidStack stack) { - var id = Registry.FLUID.getKey(stack.getFluid()); + var id = BuiltInRegistries.FLUID.getKey(stack.getFluid()); return "block." + id.getNamespace() + "." + id.getPath(); } public static FluidStack read(FriendlyByteBuf buf) { - var fluid = Objects.requireNonNull(Registry.FLUID.get(buf.readResourceLocation())); + var fluid = Objects.requireNonNull(BuiltInRegistries.FLUID.get(buf.readResourceLocation())); var amount = buf.readVarLong(); var tag = buf.readNbt(); if (fluid == Fluids.EMPTY) return FluidStack.empty(); @@ -62,7 +62,7 @@ public class FluidStackHooksImpl { } public static void write(FluidStack stack, FriendlyByteBuf buf) { - buf.writeResourceLocation(Registry.FLUID.getKey(stack.getFluid())); + buf.writeResourceLocation(BuiltInRegistries.FLUID.getKey(stack.getFluid())); buf.writeVarLong(stack.getAmount()); buf.writeNbt(stack.getTag()); } @@ -72,7 +72,7 @@ public class FluidStackHooksImpl { return FluidStack.empty(); } - var fluid = Registry.FLUID.get(new ResourceLocation(tag.getString("id"))); + var fluid = BuiltInRegistries.FLUID.get(new ResourceLocation(tag.getString("id"))); if (fluid == null || fluid == Fluids.EMPTY) { return FluidStack.empty(); } @@ -86,7 +86,7 @@ public class FluidStackHooksImpl { } public static CompoundTag write(FluidStack stack, CompoundTag tag) { - tag.putString("id", Registry.FLUID.getKey(stack.getFluid()).toString()); + tag.putString("id", BuiltInRegistries.FLUID.getKey(stack.getFluid()).toString()); tag.putLong("amount", stack.getAmount()); if (stack.hasTag()) { tag.put("tag", stack.getTag()); diff --git a/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinAtlasSet.java b/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinAtlasSet.java deleted file mode 100644 index 818737bc..00000000 --- a/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinAtlasSet.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * This file is part of architectury. - * Copyright (C) 2020, 2021, 2022 architectury - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -package dev.architectury.mixin.fabric.client; - -import dev.architectury.event.events.client.ClientTextureStitchEvent; -import net.minecraft.client.renderer.texture.TextureAtlas; -import net.minecraft.client.resources.model.AtlasSet; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.packs.resources.Resource; -import org.spongepowered.asm.mixin.Final; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Mutable; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.LocalCapture; - -import java.util.HashMap; -import java.util.Map; - -@Mixin(AtlasSet.AtlasEntry.class) -public class MixinAtlasSet { - @Mutable - @Shadow - @Final - AtlasSet.ResourceLister resourceLister; - - @Inject(method = " ", at = @At(value = "RETURN"), locals = LocalCapture.CAPTURE_FAILHARD) - private void preStitch(TextureAtlas textureAtlas, AtlasSet.ResourceLister resourceLister, CallbackInfo ci) { - AtlasSet.ResourceLister tmp = this.resourceLister; - this.resourceLister = resourceManager -> { - Map map = new HashMap<>(); - ClientTextureStitchEvent.PRE.invoker().stitch(textureAtlas, resourceManager, map::put); - map.putAll(tmp.apply(resourceManager)); - return map; - }; - } -} diff --git a/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinGameRenderer.java b/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinGameRenderer.java index 13cea79a..91ff77bf 100644 --- a/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinGameRenderer.java +++ b/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinGameRenderer.java @@ -48,7 +48,7 @@ public abstract class MixinGameRenderer { private Minecraft minecraft; @Inject(method = "render(FJZ)V", - at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screens/Screen;render(Lcom/mojang/blaze3d/vertex/PoseStack;IIF)V", + at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screens/Screen;renderWithTooltip(Lcom/mojang/blaze3d/vertex/PoseStack;IIF)V", ordinal = 0), locals = LocalCapture.CAPTURE_FAILEXCEPTION, cancellable = true) public void renderScreenPre(float tickDelta, long startTime, boolean tick, CallbackInfo ci, int mouseX, int mouseY, Window window, Matrix4f matrix, PoseStack matrices, PoseStack matrices2) { if (ClientGuiEvent.RENDER_PRE.invoker().render(minecraft.screen, matrices2, mouseX, mouseY, minecraft.getDeltaFrameTime()).isFalse()) { @@ -57,7 +57,7 @@ public abstract class MixinGameRenderer { } @Inject(method = "render(FJZ)V", - at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screens/Screen;render(Lcom/mojang/blaze3d/vertex/PoseStack;IIF)V", + at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screens/Screen;renderWithTooltip(Lcom/mojang/blaze3d/vertex/PoseStack;IIF)V", shift = At.Shift.AFTER, ordinal = 0), locals = LocalCapture.CAPTURE_FAILEXCEPTION) public void renderScreenPost(float tickDelta, long startTime, boolean tick, CallbackInfo ci, int mouseX, int mouseY, Window window, Matrix4f matrix, PoseStack matrices, PoseStack matrices2) { ClientGuiEvent.RENDER_POST.invoker().render(minecraft.screen, matrices2, mouseX, mouseY, minecraft.getDeltaFrameTime()); diff --git a/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinKeyboardHandler.java b/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinKeyboardHandler.java index fe463d39..a0635cb0 100644 --- a/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinKeyboardHandler.java +++ b/fabric/src/main/java/dev/architectury/mixin/fabric/client/MixinKeyboardHandler.java @@ -42,9 +42,6 @@ public class MixinKeyboardHandler { @Final private Minecraft minecraft; - @Shadow - private boolean sendRepeatsToGui; - @ModifyVariable(method = {"method_1458", "lambda$charTyped$5"}, at = @At("HEAD"), ordinal = 0, argsOnly = true) private static GuiEventListener wrapCharTypedFirst(GuiEventListener screen) { if (screen instanceof ScreenInputDelegate delegate) { @@ -66,7 +63,7 @@ public class MixinKeyboardHandler { ordinal = 0), cancellable = true) public void onKey(long long_1, int int_1, int int_2, int int_3, int int_4, CallbackInfo info) { if (!info.isCancelled()) { - if (int_3 != 1 && (int_3 != 2 || !this.sendRepeatsToGui)) { + if (int_3 != 1 && int_3 != 2) { if (int_3 == 0) { var result = ClientScreenInputEvent.KEY_RELEASED_PRE.invoker().keyReleased(minecraft, minecraft.screen, int_1, int_2, int_4); if (result.isPresent()) @@ -87,7 +84,7 @@ public class MixinKeyboardHandler { public void onKeyAfter(long long_1, int int_1, int int_2, int int_3, int int_4, CallbackInfo info, Screen screen, boolean bls[]) { if (!info.isCancelled() && !bls[0]) { EventResult result; - if (int_3 != 1 && (int_3 != 2 || !this.sendRepeatsToGui)) { + if (int_3 != 1 && int_3 != 2) { result = ClientScreenInputEvent.KEY_RELEASED_POST.invoker().keyReleased(minecraft, screen, int_1, int_2, int_4); } else { result = ClientScreenInputEvent.KEY_PRESSED_POST.invoker().keyPressed(minecraft, screen, int_1, int_2, int_4); diff --git a/fabric/src/main/java/dev/architectury/networking/fabric/SpawnEntityPacket.java b/fabric/src/main/java/dev/architectury/networking/fabric/SpawnEntityPacket.java index b4de4c80..a394de38 100644 --- a/fabric/src/main/java/dev/architectury/networking/fabric/SpawnEntityPacket.java +++ b/fabric/src/main/java/dev/architectury/networking/fabric/SpawnEntityPacket.java @@ -25,7 +25,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.minecraft.client.Minecraft; -import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientGamePacketListener; @@ -43,7 +43,7 @@ public class SpawnEntityPacket { throw new IllegalStateException("SpawnPacketUtil.create called on the logical client!"); } var buffer = PacketByteBufs.create(); - buffer.writeVarInt(Registry.ENTITY_TYPE.getId(entity.getType())); + buffer.writeVarInt(BuiltInRegistries.ENTITY_TYPE.getId(entity.getType())); buffer.writeUUID(entity.getUUID()); buffer.writeVarInt(entity.getId()); var position = entity.position(); @@ -88,7 +88,7 @@ public class SpawnEntityPacket { // Retain this buffer so we can use it in the queued task (EntitySpawnExtension) buf.retain(); context.queue(() -> { - var entityType = Registry.ENTITY_TYPE.byId(entityTypeId); + var entityType = BuiltInRegistries.ENTITY_TYPE.byId(entityTypeId); if (entityType == null) { throw new IllegalStateException("Entity type (" + entityTypeId + ") is unknown, spawning at (" + x + ", " + y + ", " + z + ")"); } diff --git a/fabric/src/main/java/dev/architectury/registry/fabric/CreativeTabRegistryImpl.java b/fabric/src/main/java/dev/architectury/registry/fabric/CreativeTabRegistryImpl.java index 37130db4..9fdd764d 100644 --- a/fabric/src/main/java/dev/architectury/registry/fabric/CreativeTabRegistryImpl.java +++ b/fabric/src/main/java/dev/architectury/registry/fabric/CreativeTabRegistryImpl.java @@ -40,18 +40,8 @@ public class CreativeTabRegistryImpl { private static final Multimap > APPENDS = MultimapBuilder.hashKeys().arrayListValues().build(); @ApiStatus.Experimental - public static CreativeModeTab create(ResourceLocation name, Supplier icon, CreativeTabRegistry.CreativeTabFiller filler) { - return new FabricItemGroup(name) { - @Override - public ItemStack makeIcon() { - return icon.get(); - } - - @Override - protected void generateDisplayItems(FeatureFlagSet flags, Output output, boolean canUseGameMasterBlocks) { - filler.fill(flags, output, canUseGameMasterBlocks); - } - }; + public static CreativeModeTab.Builder builder(ResourceLocation name) { + return FabricItemGroup.builder(name); } static { diff --git a/fabric/src/main/java/dev/architectury/registry/registries/fabric/RegistriesImpl.java b/fabric/src/main/java/dev/architectury/registry/registries/fabric/RegistriesImpl.java index 25dba100..5100ac53 100644 --- a/fabric/src/main/java/dev/architectury/registry/registries/fabric/RegistriesImpl.java +++ b/fabric/src/main/java/dev/architectury/registry/registries/fabric/RegistriesImpl.java @@ -34,6 +34,7 @@ import net.fabricmc.fabric.api.event.registry.RegistryAttribute; import net.fabricmc.fabric.api.event.registry.RegistryEntryAddedCallback; import net.minecraft.core.MappedRegistry; import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.Nullable; @@ -48,7 +49,7 @@ public class RegistriesImpl { private static void listen(ResourceKey> resourceKey, ResourceLocation id, Consumer> listener) { if (LISTENED_REGISTRIES.add(resourceKey)) { - Registry> registry = java.util.Objects.requireNonNull(Registry.REGISTRY.get(resourceKey.location()), "Registry " + resourceKey + " not found!"); + Registry> registry = java.util.Objects.requireNonNull(BuiltInRegistries.REGISTRY.get(resourceKey.location()), "Registry " + resourceKey + " not found!"); RegistryEntryAddedCallback.event(registry).register((rawId, entryId, object) -> { RegistryEntryId> registryEntryId = new RegistryEntryId<>(resourceKey, entryId); for (Consumer> consumer : LISTENERS.get(registryEntryId)) { @@ -74,7 +75,7 @@ public class RegistriesImpl { @Override public Registrar get(ResourceKey > key) { - return new RegistrarImpl<>(modId, (Registry ) java.util.Objects.requireNonNull(Registry.REGISTRY.get(key.location()), "Registry " + key + " not found!")); + return new RegistrarImpl<>(modId, (Registry ) java.util.Objects.requireNonNull(BuiltInRegistries.REGISTRY.get(key.location()), "Registry " + key + " not found!")); } @Override diff --git a/fabric/src/main/resources/architectury.mixins.json b/fabric/src/main/resources/architectury.mixins.json index fad372c8..79283ec2 100644 --- a/fabric/src/main/resources/architectury.mixins.json +++ b/fabric/src/main/resources/architectury.mixins.json @@ -19,7 +19,6 @@ "client.MixinMouseHandler", "client.MixinMultiPlayerGameMode", "client.MixinScreen", - "client.MixinAtlasSet" ], "mixins": [ "BiomeAccessor", diff --git a/gradle.properties b/gradle.properties index 1af076a9..47efe5e8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,8 +3,8 @@ org.gradle.daemon=false platforms=fabric -minecraft_version=22w44a -supported_version=1.19.3 (22w44a) +minecraft_version=1.19.3-pre1 +supported_version=1.19.3-pre1 required_version=1.19.3 artifact_type=beta @@ -15,7 +15,7 @@ base_version=7.0 maven_group=dev.architectury fabric_loader_version=0.14.10 -fabric_api_version=0.66.0+1.19.3 +fabric_api_version=0.67.1+1.19.3 mod_menu_version=3.1.0 forge_version=43.0.0 diff --git a/testmod-common/src/main/java/dev/architectury/test/particle/TestParticles.java b/testmod-common/src/main/java/dev/architectury/test/particle/TestParticles.java index dfa89af6..2dd47f4e 100644 --- a/testmod-common/src/main/java/dev/architectury/test/particle/TestParticles.java +++ b/testmod-common/src/main/java/dev/architectury/test/particle/TestParticles.java @@ -19,7 +19,6 @@ package dev.architectury.test.particle; -import dev.architectury.event.events.client.ClientLifecycleEvent; import dev.architectury.platform.Platform; import dev.architectury.registry.client.particle.ParticleProviderRegistry; import dev.architectury.registry.registries.DeferredRegister; @@ -27,12 +26,12 @@ import dev.architectury.registry.registries.RegistrySupplier; import dev.architectury.test.TestMod; import dev.architectury.utils.Env; import net.minecraft.client.particle.HeartParticle; -import net.minecraft.core.Registry; import net.minecraft.core.particles.ParticleType; import net.minecraft.core.particles.SimpleParticleType; +import net.minecraft.core.registries.Registries; public class TestParticles { - public static final DeferredRegister > PARTICLE_TYPES = DeferredRegister.create(TestMod.MOD_ID, Registry.PARTICLE_TYPE_REGISTRY); + public static final DeferredRegister > PARTICLE_TYPES = DeferredRegister.create(TestMod.MOD_ID, Registries.PARTICLE_TYPE); public static final RegistrySupplier TEST_PARTICLE = PARTICLE_TYPES.register("test_particle", () -> new SimpleParticleType(false) {}); diff --git a/testmod-common/src/main/java/dev/architectury/test/registry/TestRegistries.java b/testmod-common/src/main/java/dev/architectury/test/registry/TestRegistries.java index acad4725..140e4e75 100644 --- a/testmod-common/src/main/java/dev/architectury/test/registry/TestRegistries.java +++ b/testmod-common/src/main/java/dev/architectury/test/registry/TestRegistries.java @@ -36,7 +36,6 @@ import dev.architectury.test.recipes.TestRecipeSerializer; import dev.architectury.test.registry.objects.EquippableTickingItem; import dev.architectury.test.tab.TestCreativeTabs; import net.minecraft.core.BlockPos; -import net.minecraft.core.Registry; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffect; import net.minecraft.world.effect.MobEffectCategory; @@ -81,13 +80,13 @@ public class TestRegistries { public static final Registrar INTS = Registries.get(TestMod.MOD_ID). builder(new ResourceLocation(TestMod.MOD_ID, "ints")) .syncToClients() .build(); - public static final DeferredRegister - ITEMS = DeferredRegister.create(TestMod.MOD_ID, Registry.ITEM_REGISTRY); - public static final DeferredRegister
BLOCKS = DeferredRegister.create(TestMod.MOD_ID, Registry.BLOCK_REGISTRY); - public static final DeferredRegister FLUIDS = DeferredRegister.create(TestMod.MOD_ID, Registry.FLUID_REGISTRY); - public static final DeferredRegister > ENTITY_TYPES = DeferredRegister.create(TestMod.MOD_ID, Registry.ENTITY_TYPE_REGISTRY); - public static final DeferredRegister MOB_EFFECTS = DeferredRegister.create(TestMod.MOD_ID, Registry.MOB_EFFECT_REGISTRY); - public static final DeferredRegister > RECIPE_SERIALIZERS = DeferredRegister.create(TestMod.MOD_ID, Registry.RECIPE_SERIALIZER_REGISTRY); - public static final DeferredRegister > RECIPE_TYPES = DeferredRegister.create(TestMod.MOD_ID, Registry.RECIPE_TYPE_REGISTRY); + public static final DeferredRegister - ITEMS = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.ITEM); + public static final DeferredRegister
BLOCKS = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.BLOCK); + public static final DeferredRegister FLUIDS = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.FLUID); + public static final DeferredRegister > ENTITY_TYPES = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.ENTITY_TYPE); + public static final DeferredRegister MOB_EFFECTS = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.MOB_EFFECT); + public static final DeferredRegister > RECIPE_SERIALIZERS = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.RECIPE_SERIALIZER); + public static final DeferredRegister > RECIPE_TYPES = DeferredRegister.create(TestMod.MOD_ID, net.minecraft.core.registries.Registries.RECIPE_TYPE); public static final ArchitecturyFluidAttributes TEST_FLUID_ATTRIBUTES = SimpleArchitecturyFluidAttributes.ofSupplier(() -> TestRegistries.TEST_FLUID_FLOWING, () -> TestRegistries.TEST_FLUID) .convertToSource(true) diff --git a/testmod-common/src/main/java/dev/architectury/test/tags/TestTags.java b/testmod-common/src/main/java/dev/architectury/test/tags/TestTags.java index ec592d4d..be10f410 100644 --- a/testmod-common/src/main/java/dev/architectury/test/tags/TestTags.java +++ b/testmod-common/src/main/java/dev/architectury/test/tags/TestTags.java @@ -24,6 +24,7 @@ import dev.architectury.event.events.common.BlockEvent; import dev.architectury.test.TestMod; import net.minecraft.core.Registry; import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -31,9 +32,9 @@ import net.minecraft.tags.TagKey; public class TestTags { public static void initialize() { // This will not be present, but it should return an empty tag - var heartParticles = TagKey.create(Registry.BLOCK_REGISTRY, new ResourceLocation(TestMod.MOD_ID, "heart_particles")); + var heartParticles = TagKey.create(Registries.BLOCK, new ResourceLocation(TestMod.MOD_ID, "heart_particles")); // This will act like a normal tag, we have emerald block here - var heartParticles2 = TagKey.create(Registry.BLOCK_REGISTRY, new ResourceLocation(TestMod.MOD_ID, "heart_particles2")); + var heartParticles2 = TagKey.create(Registries.BLOCK, new ResourceLocation(TestMod.MOD_ID, "heart_particles2")); BlockEvent.BREAK.register((world, pos, state, player, xp) -> { if (player != null && !world.isClientSide() && (state.is(heartParticles) || state.is(heartParticles2))) { diff --git a/testmod-common/src/main/java/dev/architectury/test/trade/TestTrades.java b/testmod-common/src/main/java/dev/architectury/test/trade/TestTrades.java index f6929c26..f20330c2 100644 --- a/testmod-common/src/main/java/dev/architectury/test/trade/TestTrades.java +++ b/testmod-common/src/main/java/dev/architectury/test/trade/TestTrades.java @@ -21,15 +21,14 @@ package dev.architectury.test.trade; import dev.architectury.registry.level.entity.trade.SimpleTrade; import dev.architectury.registry.level.entity.trade.TradeRegistry; -import net.minecraft.core.Registry; -import net.minecraft.world.entity.npc.VillagerProfession; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.world.entity.npc.VillagerTrades; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; public class TestTrades { public static void init() { - for (var villagerProfession : Registry.VILLAGER_PROFESSION) { + for (var villagerProfession : BuiltInRegistries.VILLAGER_PROFESSION) { TradeRegistry.registerVillagerTrade(villagerProfession, 1, TestTrades.createTrades()); } TradeRegistry.registerTradeForWanderingTrader(false, TestTrades.createTrades()); diff --git a/testmod-common/src/main/java/dev/architectury/test/worldgen/TestWorldGeneration.java b/testmod-common/src/main/java/dev/architectury/test/worldgen/TestWorldGeneration.java index e6ef953c..4f78fe8e 100644 --- a/testmod-common/src/main/java/dev/architectury/test/worldgen/TestWorldGeneration.java +++ b/testmod-common/src/main/java/dev/architectury/test/worldgen/TestWorldGeneration.java @@ -22,7 +22,7 @@ package dev.architectury.test.worldgen; import dev.architectury.event.events.common.LifecycleEvent; import dev.architectury.registry.level.biome.BiomeModifications; import dev.architectury.test.TestMod; -import net.minecraft.core.Registry; +import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.BiomeTags; @@ -34,7 +34,7 @@ public class TestWorldGeneration { BiomeModifications.addProperties((ctx, mutable) -> { if (ctx.hasTag(BiomeTags.IS_FOREST)) { mutable.getGenerationProperties().addFeature(GenerationStep.Decoration.TOP_LAYER_MODIFICATION, - ResourceKey.create(Registry.PLACED_FEATURE_REGISTRY, + ResourceKey.create(Registries.PLACED_FEATURE, new ResourceLocation(TestMod.MOD_ID + ":diamond_blocks"))); } });