Skip to content

Commit eaa3730

Browse files
committed
feat(minecraft): merge 1.21.11 updates
Merges #4244 Signed-off-by: Gabriel Harris-Rouquette <[email protected]>
2 parents 3068e03 + bcf1e76 commit eaa3730

File tree

509 files changed

+2933
-1918
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

509 files changed

+2933
-1918
lines changed

SpongeAPI

Submodule SpongeAPI updated 26 files

bootstrap/src/main/java/org/spongepowered/bootstrap/dev/DevClasspath.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ public static List<Path[]> resolve() {
5858

5959
final AtomicBoolean hasAPISourceSet = new AtomicBoolean(false);
6060

61+
boolean skipMixinExtras = false;
6162
for (final String str : cp) {
6263
final Path path = Paths.get(str);
6364
if (!Files.exists(path)) {
@@ -96,6 +97,9 @@ public static List<Path[]> resolve() {
9697
}
9798
break;
9899
case "", "vanilla", "forge", "neoforge":
100+
if ("forge".equals(projectName)) {
101+
skipMixinExtras = true;
102+
}
99103
final WeightedPath weightedPath = new WeightedPath(projectName.isEmpty() ? 1 : 2, path);
100104
switch (sourceSet.name()) {
101105
case "applaunchConfig":
@@ -132,6 +136,14 @@ public static List<Path[]> resolve() {
132136
}
133137
continue;
134138
}
139+
// We need to skip mixinextras-common in Forge's UserDev mode as this will cause duplicate module
140+
// errors with JPMS.
141+
if (fileName.startsWith("mixinextras-common") && skipMixinExtras) {
142+
if (Bootstrap.DEBUG) {
143+
System.out.println("Ignored: " + path);
144+
}
145+
continue;
146+
}
135147

136148
if (bootNames.contains(fileName) || fileName.startsWith("org.jacoco.core-") || fileName.startsWith("mockito-") || fileName.startsWith("objenesis-")) {
137149
if (Bootstrap.DEBUG) {
@@ -158,7 +170,7 @@ public static List<Path[]> resolve() {
158170
final List<Path[]> classpath = new ArrayList<>();
159171

160172
for (final Path lib : bootLibs) {
161-
classpath.add(new Path[] { lib });
173+
classpath.add(new Path[]{lib});
162174
}
163175

164176
for (final List<WeightedPath> sourceSets : bootUnions.values()) {

forge/gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ name=SpongeForge
22
implementation=Forge
33
description=The SpongeAPI implementation for MinecraftForge
44

5-
forgeVersion=60.0.1
5+
forgeVersion=61.0.1
66
mixinConfigs=mixins.spongeforge.accessors.json,mixins.spongeforge.api.json,mixins.spongeforge.inventory.json,mixins.spongeforge.inventory.shared.json,mixins.spongeforge.core.json,mixins.spongeforge.core.shared.json,mixins.spongeforge.tracker.json

forge/src/main/java/org/spongepowered/forge/hook/ForgeChannelHooks.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626

2727
import net.minecraft.network.FriendlyByteBuf;
2828
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
29-
import net.minecraft.resources.ResourceLocation;
29+
import net.minecraft.resources.Identifier;
3030
import net.minecraftforge.network.ForgePayload;
3131
import org.spongepowered.api.ResourceKey;
3232
import org.spongepowered.common.hooks.ChannelHooks;
@@ -46,6 +46,6 @@ public void registerPlatformChannels(final Consumer<CustomPacketPayload.Type<Spo
4646
@Override
4747
public CustomPacketPayload createRegisterPayload(final Set<ResourceKey> channels) {
4848
final FriendlyByteBuf payload = (FriendlyByteBuf) RegisterChannelUtil.encodePayload(channels);
49-
return new ForgePayload((ResourceLocation) (Object) Constants.Channels.REGISTER_KEY, null, b -> b.writeBytes(payload));
49+
return new ForgePayload((Identifier) (Object) Constants.Channels.REGISTER_KEY, null, b -> b.writeBytes(payload));
5050
}
5151
}

forge/src/mixins/java/org/spongepowered/forge/mixin/core/minecraftforge/registries/ForgeRegistryMixin_Forge.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626

2727
import com.google.common.collect.Maps;
2828
import net.minecraft.core.Registry;
29-
import net.minecraft.resources.ResourceLocation;
29+
import net.minecraft.resources.Identifier;
3030
import net.minecraftforge.registries.ForgeRegistry;
3131
import net.minecraftforge.registries.IForgeRegistry;
3232
import org.spongepowered.api.ResourceKey;
@@ -55,10 +55,10 @@ public abstract class ForgeRegistryMixin_Forge<V> {
5555
private final Map<ResourceKey, RegistryBridge<V>> forge$parents = Maps.newHashMap();
5656
private boolean forge$warnedIfNoParent;
5757

58-
@Inject(method = "add(ILnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;Ljava/lang/String;)I", at = @At("TAIL"))
59-
public void forge$writeToParent(final int id, final ResourceLocation key, final V value, final String owner, final CallbackInfoReturnable<Integer> cir) {
58+
@Inject(method = "add(ILnet/minecraft/resources/Identifier;Ljava/lang/Object;Ljava/lang/String;)I", at = @At("TAIL"))
59+
public void forge$writeToParent(final int id, final Identifier key, final V value, final String owner, final CallbackInfoReturnable<Integer> cir) {
6060
final ResourceKey root = (ResourceKey) (Object) this.key.registry();
61-
final ResourceKey location = (ResourceKey) (Object) this.key.location();
61+
final var location = (ResourceKey) (Object) this.key.identifier();
6262

6363
if (!this.forge$warnedIfNoParent && this.forge$parents.isEmpty()) {
6464
// We only care about minecraft namespaced registries, as that is what we've got parents for.

forge/src/mixins/java/org/spongepowered/forge/mixin/core/minecraftforge/registries/RegistryManagerMixin_Forge.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
*/
2525
package org.spongepowered.forge.mixin.core.minecraftforge.registries;
2626

27-
import net.minecraft.resources.ResourceLocation;
27+
import net.minecraft.resources.Identifier;
2828
import net.minecraftforge.registries.ForgeRegistry;
2929
import net.minecraftforge.registries.RegistryManager;
3030
import org.spongepowered.asm.mixin.Mixin;
@@ -39,7 +39,7 @@ public class RegistryManagerMixin_Forge {
3939

4040
@SuppressWarnings("UnstableApiUsage")
4141
@Inject(method = "takeSnapshot", at = @At("RETURN"))
42-
public void forge$dontSendSpongeDataToClient(boolean savingToDisc, CallbackInfoReturnable<Map<ResourceLocation, ForgeRegistry.Snapshot>> cir) {
42+
public void forge$dontSendSpongeDataToClient(boolean savingToDisc, CallbackInfoReturnable<Map<Identifier, ForgeRegistry.Snapshot>> cir) {
4343
if (savingToDisc) {
4444
return;
4545
}

forge/src/mixins/java/org/spongepowered/forge/mixin/core/network/protocol/common/ClientboundCustomPayloadPacketMixin_Forge.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import net.minecraft.network.codec.StreamCodec;
2929
import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket;
3030
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
31-
import net.minecraft.resources.ResourceLocation;
31+
import net.minecraft.resources.Identifier;
3232
import net.minecraftforge.network.NetworkRegistry;
3333
import org.spongepowered.api.ResourceKey;
3434
import org.spongepowered.api.Sponge;
@@ -49,7 +49,7 @@ public abstract class ClientboundCustomPayloadPacketMixin_Forge {
4949
// @formatter: on
5050

5151
@Inject(method = { "lambda$static$0", "lambda$static$2" }, at = @At("HEAD"), cancellable = true)
52-
private static void forge$getSpongeCustomPacketPayload(final ResourceLocation channelKey, final CallbackInfoReturnable<StreamCodec<FriendlyByteBuf, ? extends CustomPacketPayload>> cir) {
52+
private static void forge$getSpongeCustomPacketPayload(final Identifier channelKey, final CallbackInfoReturnable<StreamCodec<FriendlyByteBuf, ? extends CustomPacketPayload>> cir) {
5353
if (NetworkRegistry.findTarget(channelKey) != null) {
5454
return;
5555
}

forge/src/mixins/java/org/spongepowered/forge/mixin/core/network/protocol/common/ServerboundCustomPayloadPacketMixin_Forge.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import net.minecraft.network.codec.StreamCodec;
2929
import net.minecraft.network.protocol.common.ServerboundCustomPayloadPacket;
3030
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
31-
import net.minecraft.resources.ResourceLocation;
31+
import net.minecraft.resources.Identifier;
3232
import net.minecraftforge.network.NetworkRegistry;
3333
import org.spongepowered.api.ResourceKey;
3434
import org.spongepowered.api.Sponge;
@@ -49,7 +49,7 @@ public abstract class ServerboundCustomPayloadPacketMixin_Forge {
4949
// @formatter: on
5050

5151
@Inject(method = { "lambda$static$0" }, at = @At("HEAD"), cancellable = true)
52-
private static void forge$getSpongeCustomPacketPayload(final ResourceLocation channelKey, final CallbackInfoReturnable<StreamCodec<FriendlyByteBuf, ? extends CustomPacketPayload>> cir) {
52+
private static void forge$getSpongeCustomPacketPayload(final Identifier channelKey, final CallbackInfoReturnable<StreamCodec<FriendlyByteBuf, ? extends CustomPacketPayload>> cir) {
5353
if (NetworkRegistry.findTarget(channelKey) != null) {
5454
return;
5555
}

forge/src/mixins/java/org/spongepowered/forge/mixin/core/server/ReloadableServerResourcesMixin_Forge.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import net.minecraft.server.RegistryLayer;
3434
import net.minecraft.server.ReloadableServerResources;
3535
import net.minecraft.server.packs.resources.ResourceManager;
36+
import net.minecraft.server.permissions.PermissionSet;
3637
import net.minecraft.world.flag.FeatureFlagSet;
3738
import org.spongepowered.asm.mixin.Mixin;
3839
import org.spongepowered.asm.mixin.injection.At;
@@ -44,9 +45,13 @@
4445
@Mixin(ReloadableServerResources.class)
4546
public abstract class ReloadableServerResourcesMixin_Forge {
4647

47-
@WrapOperation(method = "lambda$loadResources$1", at = @At(value = "NEW", target = "(Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;Ljava/util/List;I)Lnet/minecraft/server/ReloadableServerResources;"))
48-
private static ReloadableServerResources impl$onCreateResources(final LayeredRegistryAccess<RegistryLayer> $$0, final HolderLookup.Provider $$1, final FeatureFlagSet $$2,
49-
final Commands.CommandSelection $$3, final List<?> $$4, final int $$5, final Operation<ReloadableServerResources> original, final @Local(argsOnly = true) ResourceManager resourceManager) {
48+
@WrapOperation(method = "lambda$loadResources$1", at = @At(value = "NEW",
49+
target = "(Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;Ljava/util/List;Lnet/minecraft/server/permissions/PermissionSet;)Lnet/minecraft/server/ReloadableServerResources;"
50+
))
51+
private static ReloadableServerResources impl$onCreateResources(
52+
final LayeredRegistryAccess<RegistryLayer> $$0, final HolderLookup.Provider $$1, final FeatureFlagSet $$2,
53+
final Commands.CommandSelection $$3, final List<?> $$4, final PermissionSet $$5,
54+
final Operation<ReloadableServerResources> original, final @Local(argsOnly = true) ResourceManager resourceManager) {
5055
final ReloadableServerResources instance = original.call($$0, $$1, $$2, $$3, $$4, $$5);
5156
if (instance.getCommands().getDispatcher() instanceof final DelegatingCommandDispatcher delegatingCommandDispatcher) {
5257
delegatingCommandDispatcher.permissionService(((ResourceManagerBridge) resourceManager).bridge$services().permissionService());

forge/src/mixins/java/org/spongepowered/forge/mixin/core/tags/TagLoaderMixin_Forge.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
2828
import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
2929
import com.llamalad7.mixinextras.sugar.Local;
30-
import net.minecraft.resources.ResourceLocation;
30+
import net.minecraft.resources.Identifier;
3131
import net.minecraft.tags.TagEntry;
3232
import net.minecraft.tags.TagLoader;
3333
import org.spongepowered.asm.mixin.Mixin;
@@ -56,7 +56,7 @@ public abstract class TagLoaderMixin_Forge<T> implements TagLoaderBridge<T> {
5656
}
5757

5858
@Inject(method = "lambda$build$6", at = @At("HEAD"))
59-
private void forge$onStartBuildingTag(final TagEntry.Lookup<T> $$0x, final Map<ResourceLocation, Collection<T>> $$1x, final ResourceLocation $$2x,
59+
private void forge$onStartBuildingTag(final TagEntry.Lookup<T> $$0x, final Map<Identifier, Collection<T>> $$1x, final Identifier $$2x,
6060
final @Coerce Object $$3x, final CallbackInfo ci) {
6161
this.bridge$buildingTagKey($$2x);
6262
}

0 commit comments

Comments
 (0)