mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-17 06:11:24 +00:00
Fabric/Quilt fertilization support
This commit is contained in:
@@ -12,6 +12,12 @@ architectury {
|
||||
dependencies {
|
||||
shadedApi(project(":common:implementation:base"))
|
||||
|
||||
annotationProcessor("net.fabricmc:sponge-mixin:${Versions.Mod.mixin}")
|
||||
annotationProcessor("dev.architectury:architectury-loom:${Versions.Mod.architecuryLoom}")
|
||||
|
||||
modImplementation("com.github.the-glitch-network:minecraft-gudasm:${Versions.Mod.minecraftGudAsm}")
|
||||
include("com.github.the-glitch-network:minecraft-gudasm:${Versions.Mod.minecraftGudAsm}")
|
||||
|
||||
implementation(project(path = ":platforms:mixin-common", configuration = "namedElements")) { isTransitive = false }
|
||||
"developmentFabric"(project(path = ":platforms:mixin-common", configuration = "namedElements")) { isTransitive = false }
|
||||
shaded(project(path = ":platforms:mixin-common", configuration = "transformProductionFabric")) { isTransitive = false }
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.dfsek.terra.fabric;
|
||||
|
||||
import com.dfsek.terra.fabric.util.FabricLoaderUtil;
|
||||
|
||||
import net.gudenau.minecraft.asm.api.v1.AsmInitializer;
|
||||
import net.gudenau.minecraft.asm.api.v1.AsmRegistry;
|
||||
|
||||
import com.dfsek.terra.lifecycle.asm.FertilizableASM;
|
||||
import com.dfsek.terra.lifecycle.util.LoaderUtil;
|
||||
import com.dfsek.terra.quilt.util.QuiltLoaderUtil;
|
||||
|
||||
|
||||
public class FabricASMEntryPoint implements AsmInitializer {
|
||||
@Override
|
||||
public void onInitializeAsm() {
|
||||
LoaderUtil.INSTANCE = new FabricLoaderUtil();
|
||||
AsmRegistry.getInstance().registerTransformer(new FertilizableASM());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.dfsek.terra.fabric.util;
|
||||
|
||||
import com.dfsek.terra.lifecycle.util.LoaderUtil;
|
||||
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
|
||||
|
||||
public class FabricLoaderUtil extends LoaderUtil {
|
||||
@Override
|
||||
public String mapClassName(String namespace, String className) {
|
||||
return FabricLoader.getInstance().getMappingResolver().mapClassName(namespace, className);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String mapMethodName(String namespace, String owner, String name, String descriptor) {
|
||||
return FabricLoader.getInstance().getMappingResolver().mapMethodName(namespace, owner, name, descriptor);
|
||||
}
|
||||
}
|
||||
@@ -18,6 +18,9 @@
|
||||
"entrypoints": {
|
||||
"main": [
|
||||
"com.dfsek.terra.fabric.FabricEntryPoint"
|
||||
],
|
||||
"gud_asm": [
|
||||
"com.dfsek.terra.fabric.FabricASMEntryPoint"
|
||||
]
|
||||
},
|
||||
"mixins": [
|
||||
|
||||
Reference in New Issue
Block a user