plugins { id "idea" id "java" id "com.github.johnrengelman.shadow" version "7.1.2" id "dev.architectury.architectury-pack200" version "0.1.3" id "gg.essential.loom" version "0.10.0.+" } version = "4.0.0" group = "kr.syeyoung.dungeonsguide" archivesBaseName = "dungeonsguide" java { toolchain.languageVersion.set(JavaLanguageVersion.of(8)) } loom { launchConfigs { client { // probably will have to my own mixin tweaker, due to dungeonsguide's weird dynamic loading stuff // property("mixin.debug", "true") // property("asmhelper.verbose", "true") // arg("--tweakClass", "org.spongepowered.asm.launch.MixinTweaker") // arg("--mixin", "mixins.examplemod.json") } } runs { client { runDir = 'runtime' property('devauth.enabled','true') client() } } forge { pack200Provider.set(new dev.architectury.pack200.java.Pack200Adapter()) } } sourceSets.main { output.setResourcesDir(file("$buildDir/classes/java/main")) } repositories { mavenCentral() maven { url "https://jitpack.io" } // dev auth maven {url "https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1"} } configurations { implementation.extendsFrom shadowImpl } 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") implementation "org.jetbrains:annotations-java5:19.0.0" implementation "org.json:json:20171018" implementation 'io.nayuki:qrcodegen:1.4.0' runtimeOnly project(':mod') compileOnly "org.projectlombok:lombok:1.18.20" annotationProcessor "org.projectlombok:lombok:1.18.16" testCompileOnly "org.projectlombok:lombok:1.18.20" testAnnotationProcessor "org.projectlombok:lombok:1.18.20" modRuntimeOnly("me.djtheredstoner:DevAuth-forge-legacy:1.1.0") } tasks.withType(JavaCompile) { options.encoding = "UTF-8" } tasks.withType(Jar) { archivesBaseName = "dungeonsguide-loader" manifest { attributes["FMLCorePluginContainsFMLMod"] = "true" attributes["ForceLoadAsMod"] = "true" // If you don't want mixins, remove these lines // this["TweakClass"] = "org.spongepowered.asm.launch.MixinTweaker" // this["MixinConfigs"] = "mixins.examplemod.json" } } tasks.shadowJar { archiveFileName = jar.archiveFileName relocate "org.java_websocket", "kr.syeyoung.org.java_websocket" dependencies { include(dependency("org.java-websocket:Java-WebSocket:1.5.1")) include(dependency("org.slf4j:slf4j-api:1.7.25")) include(dependency("org.json:json:20171018")) include(dependency("com.twelvemonkeys..*:.*")) } } tasks.named("remapJar") { archiveClassifier = "all" from(tasks.shadowJar) input = tasks.shadowJar.archiveFile } tasks.assemble.dependsOn tasks.remapJar