mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2025-07-03 08:25:31 +00:00
add mixin to inject flora
This commit is contained in:
parent
ee336b01a6
commit
ded308c01c
@ -17,6 +17,7 @@ import net.minecraft.world.gen.chunk.ChunkGeneratorSettings;
|
||||
import org.checkerframework.checker.units.qual.C;
|
||||
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.Redirect;
|
||||
|
||||
import java.util.List;
|
||||
@ -28,7 +29,6 @@ import com.dfsek.terra.lifecycle.util.LifecycleUtil;
|
||||
|
||||
@Mixin(RegistryLoader.class)
|
||||
public class RegistryLoaderMixin {
|
||||
@SuppressWarnings("unchecked")
|
||||
@Redirect(
|
||||
method = "load(Lnet/minecraft/resource/ResourceManager;Lnet/minecraft/registry/DynamicRegistryManager;Ljava/util/List;)" +
|
||||
"Lnet/minecraft/registry/DynamicRegistryManager$Immutable;",
|
||||
|
@ -0,0 +1,32 @@
|
||||
package com.dfsek.terra.lifecycle.mixin.lifecycle;
|
||||
|
||||
import com.dfsek.terra.lifecycle.util.LifecycleUtil;
|
||||
|
||||
import com.dfsek.terra.mod.util.MinecraftUtil;
|
||||
|
||||
import net.minecraft.registry.DynamicRegistryManager;
|
||||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.server.SaveLoading;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.ModifyArg;
|
||||
|
||||
|
||||
@Mixin(SaveLoading.class)
|
||||
public class SaveLoadingMixin {
|
||||
@ModifyArg(
|
||||
method = "method_42097(Lnet/minecraft/registry/DynamicRegistryManager$Immutable;" +
|
||||
"Lnet/minecraft/server/SaveLoading$SaveApplierFactory;Lnet/minecraft/resource/LifecycledResourceManager;" +
|
||||
"Lnet/minecraft/registry/CombinedDynamicRegistries;Lnet/minecraft/server/SaveLoading$LoadContext;" +
|
||||
"Lnet/minecraft/server/DataPackContents;)Ljava/lang/Object;",
|
||||
at = @At(
|
||||
value = "INVOKE",
|
||||
target = "Lnet/minecraft/server/DataPackContents;refresh(Lnet/minecraft/registry/DynamicRegistryManager;)V"
|
||||
),
|
||||
index = 0
|
||||
)
|
||||
private static DynamicRegistryManager grabManager(DynamicRegistryManager in) {
|
||||
MinecraftUtil.registerFlora(in.get(RegistryKeys.BIOME));
|
||||
return in;
|
||||
}
|
||||
}
|
@ -1,22 +1,23 @@
|
||||
{
|
||||
"required" : true,
|
||||
"minVersion" : "0.8",
|
||||
"package" : "com.dfsek.terra.lifecycle.mixin",
|
||||
"compatibilityLevel" : "JAVA_17",
|
||||
"mixins" : [
|
||||
"required": true,
|
||||
"minVersion": "0.8",
|
||||
"package": "com.dfsek.terra.lifecycle.mixin",
|
||||
"compatibilityLevel": "JAVA_17",
|
||||
"mixins": [
|
||||
"NoiseConfigMixin",
|
||||
"RegistryEntryReferenceInvoker",
|
||||
"RegistryMixin",
|
||||
"SimpleRegistryMixin",
|
||||
"lifecycle.MinecraftServerMixin",
|
||||
"lifecycle.RegistryLoaderMixin"
|
||||
"lifecycle.RegistryLoaderMixin",
|
||||
"lifecycle.SaveLoadingMixin"
|
||||
],
|
||||
"client" : [
|
||||
"client": [
|
||||
],
|
||||
"server" : [
|
||||
"server": [
|
||||
],
|
||||
"injectors" : {
|
||||
"defaultRequire" : 1
|
||||
"injectors": {
|
||||
"defaultRequire": 1
|
||||
},
|
||||
"refmap" : "terra.lifecycle.refmap.json"
|
||||
"refmap": "terra.lifecycle.refmap.json"
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user