From 29ba70a5b682bbd430df1eb626a19422a6e08270 Mon Sep 17 00:00:00 2001 From: HacktheTime Date: Fri, 13 Oct 2023 19:43:18 +0200 Subject: working 2 separate sub projects. some more tweaks need to be done though --- forge/build.gradle | 127 ------------------- forge/build.gradle.kts | 135 +++++++++++++++++++++ .../forge/communication/BBsentialConnection.java | 2 +- 3 files changed, 136 insertions(+), 128 deletions(-) delete mode 100644 forge/build.gradle create mode 100644 forge/build.gradle.kts (limited to 'forge') diff --git a/forge/build.gradle b/forge/build.gradle deleted file mode 100644 index 2b7af90..0000000 --- a/forge/build.gradle +++ /dev/null @@ -1,127 +0,0 @@ -plugins { - id("idea") - id("java") - id("gg.essential.loom") version "0.10.0.+" - id("dev.architectury.architectury-pack200") version "0.1.3" - id("com.github.johnrengelman.shadow") version "8.1.1" - id("com.bnorm.power.kotlin-power-assert") version "0.13.0" -} - -// Toolchains: -java { - toolchain.languageVersion.set(JavaLanguageVersion.of(8)) -} - -// Minecraft configuration: -loom { - log4jConfigs.from(file("log4j2.xml")) - launchConfigs { - "client" { - // If you don't want mixins, remove these lines - property("mixin.debug", "true") - property("asmhelper.verbose", "true") - arg("--tweakClass", "org.spongepowered.asm.launch.MixinTweaker") - arg("--mixin", "mixins.$modid.json") - } - } - forge { - pack200Provider.set(dev.architectury.pack200.java.Pack200Adapter()) - // If you don't want mixins, remove this lines - mixinConfig("mixins.bbsentials.json") - } - // If you don't want mixins, remove these lines - mixin { - defaultRefmapName.set("mixins.bbsentials.refmap.json") - } -} - -sourceSets.main { - output.resourcesDir = file("$buildDir/classes/java/main") -} - -// Dependencies: - -repositories { - mavenCentral() - maven("https://repo.spongepowered.org/maven/") - // If you don't want to log in with your real minecraft account, remove this line - maven("https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1") -} - -val shadowImpl: Configuration by configurations.creating { - configurations.implementation.get().extendsFrom(this) -} - -dependencies { - minecraft("com.mojang:minecraft:1.8.9") - mappings("de.oceanlabs.mcp:mcp_stable:22-1.8.9") - forge("net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9") - - // If you don't want mixins, remove these lines - shadowImpl("org.spongepowered:mixin:0.7.11-SNAPSHOT") { - isTransitive = false - } - annotationProcessor("org.spongepowered:mixin:0.8.5-SNAPSHOT") - - // If you don't want to log in with your real minecraft account, remove this line - runtimeOnly("me.djtheredstoner:DevAuth-forge-legacy:1.1.2") - -} - -// Tasks: - -tasks.withType(JavaCompile::class) { - options.encoding = "UTF-8" -} - -tasks.withType(Jar::class) { - archiveBaseName.set(modid) - manifest.attributes.run { - this["FMLCorePluginContainsFMLMod"] = "true" - this["ForceLoadAsMod"] = "true" - - // If you don't want mixins, remove these lines - this["TweakClass"] = "org.spongepowered.asm.launch.MixinTweaker" - this["MixinConfigs"] = "mixins.$modid.json" - } -} - -tasks.processResources { - inputs.property("version", project.version) - inputs.property("mcversion", mcVersion) - inputs.property("modid", modid) - inputs.property("mixinGroup", mixinGroup) - - filesMatching(listOf("mcmod.info", "mixins.$modid.json")) { - expand(inputs.properties) - rename { fileName -> - fileName.replaceAll("(.+_at.cfg)", "META-INF/" + fileName) - } - } -} - - -val remapJar by tasks.named("remapJar") { - archiveClassifier.set("") - from(tasks.shadowJar) - input.set(tasks.shadowJar.get().archiveFile) -} - -tasks.jar { - archiveClassifier.set("without-deps") - destinationDirectory.set(layout.buildDirectory.dir("badjars")) -} - -tasks.shadowJar { - destinationDirectory.set(layout.buildDirectory.dir("badjars")) - archiveClassifier.set("all-dev") - configurations = listOf(shadowImpl) - doLast { - configurations.forEach { - println("Copying jars into mod: ${it.files}") - } - } -} - -tasks.assemble.get().dependsOn(tasks.remapJar) - diff --git a/forge/build.gradle.kts b/forge/build.gradle.kts new file mode 100644 index 0000000..6f42b2c --- /dev/null +++ b/forge/build.gradle.kts @@ -0,0 +1,135 @@ +plugins { + idea + java + id("gg.essential.loom") version "0.10.0.+" + id("dev.architectury.architectury-pack200") version "0.1.3" + id("com.github.johnrengelman.shadow") version "8.1.1" +} + +//Constants: + +val baseGroup: String by project +val mcVersion: String by project +val version: String by project +val mixinGroup = "$baseGroup.mixin" +val modid: String by project + +// Toolchains: +java { + toolchain.languageVersion.set(JavaLanguageVersion.of(8)) +} + +// Minecraft configuration: +loom { + log4jConfigs.from(file("log4j2.xml")) + launchConfigs { + "client" { + // If you don't want mixins, remove these lines + property("mixin.debug", "true") + property("asmhelper.verbose", "true") + arg("--tweakClass", "org.spongepowered.asm.launch.MixinTweaker") + arg("--mixin", "mixins.$modid.json") + } + } + forge { + pack200Provider.set(dev.architectury.pack200.java.Pack200Adapter()) + // If you don't want mixins, remove this lines + mixinConfig("mixins.$modid.json") + } + // If you don't want mixins, remove these lines + mixin { + defaultRefmapName.set("mixins.$modid.refmap.json") + } +} + +sourceSets.main { + output.resourcesDir = file("$buildDir/classes/java/main") +} + +// Dependencies: + +repositories { + mavenCentral() + maven("https://repo.spongepowered.org/maven/") + // If you don't want to log in with your real minecraft account, remove this line + maven("https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1") +} + +val shadowImpl: Configuration by configurations.creating { + configurations.implementation.get().extendsFrom(this) +} + +dependencies { + minecraft("com.mojang:minecraft:1.8.9") + mappings("de.oceanlabs.mcp:mcp_stable:22-1.8.9") + forge("net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9") + + // If you don't want mixins, remove these lines + shadowImpl("org.spongepowered:mixin:0.7.11-SNAPSHOT") { + isTransitive = false + } + annotationProcessor("org.spongepowered:mixin:0.8.5-SNAPSHOT") + + // If you don't want to log in with your real minecraft account, remove this line + runtimeOnly("me.djtheredstoner:DevAuth-forge-legacy:1.1.2") + +} + +// Tasks: + +tasks.withType(JavaCompile::class) { + options.encoding = "UTF-8" +} + +tasks.withType(Jar::class) { + archiveBaseName.set(modid) + manifest.attributes.run { + this["FMLCorePluginContainsFMLMod"] = "true" + this["ForceLoadAsMod"] = "true" + + // If you don't want mixins, remove these lines + this["TweakClass"] = "org.spongepowered.asm.launch.MixinTweaker" + this["MixinConfigs"] = "mixins.$modid.json" + } +} + +tasks.processResources { + inputs.property("version", project.version) + inputs.property("mcversion", mcVersion) + inputs.property("modid", modid) + inputs.property("mixinGroup", mixinGroup) + + filesMatching(listOf("mcmod.info", "mixins.$modid.json")) { + expand(inputs.properties) + } + rename("(.+_at.cfg)", "META-INF/$1") +} + + +val remapJar by tasks.named("remapJar") { + archiveClassifier.set("") + from(tasks.shadowJar) + input.set(tasks.shadowJar.get().archiveFile) +} + +tasks.jar { + archiveClassifier.set("without-deps") + destinationDirectory.set(layout.buildDirectory.dir("badjars")) +} + +tasks.shadowJar { + destinationDirectory.set(layout.buildDirectory.dir("badjars")) + archiveClassifier.set("all-dev") + configurations = listOf(shadowImpl) + doLast { + configurations.forEach { + println("Copying jars into mod: ${it.files}") + } + } + + // If you want to include other dependencies and shadow them, you can relocate them in here + fun relocate(name: String) = relocate(name, "$baseGroup.deps.$name") +} + +tasks.assemble.get().dependsOn(tasks.remapJar) + diff --git a/forge/src/main/java/de/hype/bbsentials/forge/communication/BBsentialConnection.java b/forge/src/main/java/de/hype/bbsentials/forge/communication/BBsentialConnection.java index 94ab673..f7e4260 100644 --- a/forge/src/main/java/de/hype/bbsentials/forge/communication/BBsentialConnection.java +++ b/forge/src/main/java/de/hype/bbsentials/forge/communication/BBsentialConnection.java @@ -274,7 +274,7 @@ public class BBsentialConnection { throw new RuntimeException(arguments[1]); } else if (arguments[0].equals("hub")) { -//TODO BBsentials.config.sender.addHiddenSendTask("/hub", 1); + BBsentials.config.sender.addHiddenSendTask("/hub", 1); } } if (BBsentials.getConfig().isDetailedDevModeEnabled()) { -- cgit