Inspired by 2020's April Fools' 20w14infinite Snapshot, this mod brings endless randomly generated dimensions into Minecraft.

Fix mixin failure in Forge (probably)

+3 -6
+3 -6
forge/src/main/java/net/lerariemann/infinity/mixin/forge/ServerPlayerEntityMixin.java
··· 21 21 import net.minecraft.world.TeleportTarget; 22 22 import net.minecraft.world.World; 23 23 import net.minecraft.world.WorldProperties; 24 + import net.minecraftforge.common.util.ITeleporter; 24 25 import org.spongepowered.asm.mixin.Final; 25 26 import org.spongepowered.asm.mixin.Mixin; 26 27 import org.spongepowered.asm.mixin.Shadow; ··· 41 42 @Shadow public abstract boolean damage(DamageSource source, float amount); 42 43 @Shadow @Final public MinecraftServer server; 43 44 44 - 45 - @Inject(method = "teleport(Lnet/minecraft/server/world/ServerWorld;DDDFF)V", 46 - at = @At(value = "INVOKE", target = "Lnet/minecraft/server/network/ServerPlayerEntity;setServerWorld(Lnet/minecraft/server/world/ServerWorld;)V"), 47 - locals = LocalCapture.CAPTURE_FAILHARD) 48 - private void injected2(ServerWorld destination, CallbackInfoReturnable<Entity> ci, ServerWorld serverWorld, RegistryKey<World> registryKey, 49 - WorldProperties worldProperties, PlayerManager playerManager, TeleportTarget teleportTarget) { 45 + @Inject(method = "lambda$changeDimension$8", at= @At(value = "INVOKE", target = "Lnet/minecraft/server/network/ServerPlayerEntity;setServerWorld(Lnet/minecraft/server/world/ServerWorld;)V")) 46 + private void inject3(ServerWorld serverlevel, RegistryKey registryKey, ServerWorld destination, TeleportTarget teleportTarget, Boolean spawnPortal, CallbackInfoReturnable<Entity> cir) { 50 47 if (RandomProvider.getProvider(server).rule("returnPortalsEnabled") && 51 48 (registryKey.getValue().getNamespace().equals(InfinityMod.MOD_ID))) { 52 49 BlockPos pos = BlockPos.ofFloored(teleportTarget.position);