mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-04-03 06:16:10 +00:00
fix MinecraftServer_BiomeRegistrationMixin
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
package com.dfsek.terra.fabric.mixin.lifecycle;
|
||||
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.util.registry.DynamicRegistryManager.Immutable;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
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.CallbackInfoReturnable;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
import com.dfsek.terra.fabric.FabricEntryPoint;
|
||||
import com.dfsek.terra.fabric.event.BiomeRegistrationEvent;
|
||||
|
||||
|
||||
@Mixin(MinecraftServer.class)
|
||||
public abstract class MinecraftServer_BiomeRegistrationMixin {
|
||||
@Shadow
|
||||
public abstract Immutable getRegistryManager();
|
||||
|
||||
@Inject(method = "reloadResources",
|
||||
at = @At("HEAD"))
|
||||
private void inject(Collection<String> dataPacks, CallbackInfoReturnable<CompletableFuture<Void>> cir) {
|
||||
FabricEntryPoint.getPlatform().getEventManager().callEvent(new BiomeRegistrationEvent(getRegistryManager())); // register biomes
|
||||
}
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
package com.dfsek.terra.fabric.mixin.lifecycle;
|
||||
|
||||
import net.minecraft.resource.ResourcePack;
|
||||
import net.minecraft.resource.ServerResourceManager;
|
||||
import net.minecraft.server.command.CommandManager;
|
||||
import net.minecraft.util.registry.DynamicRegistryManager;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
import com.dfsek.terra.fabric.FabricEntryPoint;
|
||||
import com.dfsek.terra.fabric.event.BiomeRegistrationEvent;
|
||||
|
||||
|
||||
@Mixin(ServerResourceManager.class)
|
||||
public class ServerResourceManagerMixin {
|
||||
@Inject(method = "reload(Ljava/util/List;Lnet/minecraft/util/registry/DynamicRegistryManager;" +
|
||||
"Lnet/minecraft/server/command/CommandManager$RegistrationEnvironment;ILjava/util/concurrent/Executor;" +
|
||||
"Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;",
|
||||
at = @At("HEAD"))
|
||||
private static void inject(List<ResourcePack> packs, DynamicRegistryManager registryManager,
|
||||
CommandManager.RegistrationEnvironment commandEnvironment, int functionPermissionLevel,
|
||||
Executor prepareExecutor,
|
||||
Executor applyExecutor, CallbackInfoReturnable<CompletableFuture<ServerResourceManager>> cir) {
|
||||
FabricEntryPoint.getPlatform().getEventManager().callEvent(new BiomeRegistrationEvent(registryManager)); // register biomes
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@
|
||||
"implementations.world.ChunkRegionMixin",
|
||||
"implementations.world.ServerWorldMixin",
|
||||
"lifecycle.MinecraftServerMixin",
|
||||
"lifecycle.ServerResourceManagerMixin"
|
||||
"lifecycle.MinecraftServer_BiomeRegistrationMixin"
|
||||
],
|
||||
"client": [
|
||||
"access.GeneratorTypeAccessor",
|
||||
|
||||
Reference in New Issue
Block a user