Allow accessTransformer to be configured

Signed-off-by: shedaniel <daniel@shedaniel.me>
This commit is contained in:
shedaniel
2021-06-30 00:43:26 +08:00
parent a9c11d2fde
commit 9c95f9a900
2 changed files with 14 additions and 6 deletions

View File

@@ -87,6 +87,7 @@ public class LoomGradleExtension {
public boolean remapMod = true;
public String customManifest = null;
public File accessWidener = null;
public File accessTransformer = null;
public Function<String, Object> intermediaryUrl = mcVer -> "https://maven.fabricmc.net/net/fabricmc/intermediary/" + mcVer + "/intermediary-" + mcVer + "-v2.jar";
public boolean shareCaches = false;
public List<String> mixinConfigs = new ArrayList<>(); // FORGE: Passed to Minecraft
@@ -280,6 +281,10 @@ public class LoomGradleExtension {
this.accessWidener = project.file(file);
}
public void accessTransformer(Object file) {
this.accessTransformer = project.file(file);
}
public File getUserCache() {
File userCache = new File(project.getGradle().getGradleUserHomeDir(), "caches" + File.separator + "fabric-loom");

View File

@@ -123,15 +123,18 @@ public class MinecraftPatchedProvider extends DependencyProvider {
public void initFiles() throws IOException {
filesDirty = false;
projectAtHash = new File(getExtension().getProjectPersistentCache(), "at.sha256");
projectAt = getExtension().accessTransformer;
SourceSet main = getProject().getConvention().findPlugin(JavaPluginConvention.class).getSourceSets().getByName("main");
if (projectAt == null) {
SourceSet main = getProject().getConvention().findPlugin(JavaPluginConvention.class).getSourceSets().getByName("main");
for (File srcDir : main.getResources().getSrcDirs()) {
File projectAt = new File(srcDir, "META-INF/accesstransformer.cfg");
for (File srcDir : main.getResources().getSrcDirs()) {
File projectAt = new File(srcDir, "META-INF/accesstransformer.cfg");
if (projectAt.exists()) {
this.projectAt = projectAt;
break;
if (projectAt.exists()) {
this.projectAt = projectAt;
break;
}
}
}