diff --git a/Common/build.gradle b/Common/build.gradle index 089e5b0..f0b4907 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -1,17 +1,14 @@ archivesBaseName = "${mod_name.replace(" ", "")}-Common-${minecraft_version}" dependencies { - implementation "com.hypherionmc:rpcsdk:1.0" - implementation("me.hypherionmc.sdlink:mcdiscordformatter-1.20.3:2.0.0") + } shadowJar { from sourceSets.main.output - dependencies { - include(dependency("me.hypherionmc.moon-config:core:${moon_config}")) - include(dependency("me.hypherionmc.moon-config:toml:${moon_config}")) - include(dependency("me.hypherionmc.sdlink:mcdiscordformatter-1.20.3:2.0.0")) + configurations = [project.configurations.shade] + dependencies { relocate 'me.hypherionmc.moonconfig', 'shadow.hypherionmc.moonconfig' relocate 'me.hypherionmc.mcdiscordformatter', 'shadow.hypherionmc.mcdiscordformatter' } @@ -65,12 +62,6 @@ publishing { } repositories { - maven { - url "https://maven.firstdark.dev/" + (project.release ? "releases" : "snapshots") - credentials { - username System.getenv("MAVEN_USER") - password System.getenv("MAVEN_PASS") - } - } + maven rootProject.orion.getPublishingMaven() } } \ No newline at end of file diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 2672e07..cbeddd6 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -4,11 +4,6 @@ dependencies { // Core modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_api}" - shade "me.hypherionmc.moon-config:core:${moon_config}" - shade "me.hypherionmc.moon-config:toml:${moon_config}" - shade "com.hypherionmc:rpcsdk:1.0" - shade ("me.hypherionmc.sdlink:mcdiscordformatter-1.20.3:2.0.0") - modImplementation("com.terraformersmc:modmenu:${mod_menu_version}") { exclude(group: "net.fabricmc.fabric-api") } @@ -95,13 +90,7 @@ publishing { } repositories { - maven { - url "https://maven.firstdark.dev/" + (project.release ? "releases" : "snapshots") - credentials { - username System.getenv("MAVEN_USER") - password System.getenv("MAVEN_PASS") - } - } + maven rootProject.orion.getPublishingMaven() } } diff --git a/Forge/build.gradle b/Forge/build.gradle index 5301822..80e3256 100644 --- a/Forge/build.gradle +++ b/Forge/build.gradle @@ -2,10 +2,6 @@ archivesBaseName = "${mod_name.replace(" ", "")}-Forge-${minecraft_version}" dependencies { - shade "me.hypherionmc.moon-config:core:${moon_config}" - shade "me.hypherionmc.moon-config:toml:${moon_config}" - shade "com.hypherionmc:rpcsdk:1.0" - shade ("me.hypherionmc.sdlink:mcdiscordformatter-1.20.3:2.0.0") // Do not edit or remove implementation project(":Common") @@ -90,13 +86,7 @@ publishing { } repositories { - maven { - url "https://maven.firstdark.dev/" + (project.release ? "releases" : "snapshots") - credentials { - username System.getenv("MAVEN_USER") - password System.getenv("MAVEN_PASS") - } - } + maven rootProject.orion.getPublishingMaven() } } diff --git a/NeoForge/build.gradle b/NeoForge/build.gradle index 14665ef..2bec474 100644 --- a/NeoForge/build.gradle +++ b/NeoForge/build.gradle @@ -1,11 +1,6 @@ -// Adjust the output jar name here archivesBaseName = "${mod_name.replace(" ", "")}-NeoForge-${minecraft_version}" dependencies { - shade "me.hypherionmc.moon-config:core:${moon_config}" - shade "me.hypherionmc.moon-config:toml:${moon_config}" - shade "com.hypherionmc:rpcsdk:1.0" - shade ("me.hypherionmc.sdlink:mcdiscordformatter-1.20.3:2.0.0") // Do not edit or remove implementation project(":Common") @@ -90,13 +85,7 @@ publishing { } repositories { - maven { - url "https://maven.firstdark.dev/" + (project.release ? "releases" : "snapshots") - credentials { - username System.getenv("MAVEN_USER") - password System.getenv("MAVEN_PASS") - } - } + maven rootProject.orion.getPublishingMaven() } } diff --git a/build.gradle b/build.gradle index 6024770..9f5613f 100644 --- a/build.gradle +++ b/build.gradle @@ -1,25 +1,25 @@ plugins { id 'java' - id 'com.github.johnrengelman.shadow' version '8.0.0' apply false + id 'com.github.johnrengelman.shadow' version '8.1.1' apply false id "xyz.wagyourtail.unimined" version "1.1.0-SNAPSHOT" apply false id "me.hypherionmc.modutils.modpublisher" version "1.0.23+" + id "com.hypherionmc.modutils.orion" version "1.0.6" id 'maven-publish' } -ext { - release = project.properties['release'] ?: false -} +orion { + multiProject = true + enableMirrorMaven = true + enableReleasesMaven = true -var base_version = "${version_major}.${version_minor}" -var final_version = "${base_version}.${version_patch}" + dopplerToken = System.getenv("DOPPLER_KEY") -// CI Support -if (!release && System.getenv('BUILD_NUMBER') != null) { - final_version = "${base_version}.${System.getenv('BUILD_NUMBER')}d" + versioning { + identifier("${release_type}") + } } group = project_group -version = "${final_version}" subprojects { apply plugin: "xyz.wagyourtail.unimined" @@ -28,22 +28,11 @@ subprojects { apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'me.hypherionmc.modutils.modpublisher' - group = rootProject.group - version = rootProject.version - sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 repositories { mavenCentral() - maven { - name = 'First Dark Maven' - url = 'https://maven.firstdark.dev/releases/' - } - maven { - name = 'First Dark Mirror' - url = 'https://mcentral.firstdark.dev/releases/' - } } configurations { @@ -54,10 +43,13 @@ subprojects { } dependencies { - implementation "me.hypherionmc.moon-config:core:${moon_config}" - implementation "me.hypherionmc.moon-config:toml:${moon_config}" - shade "net.kyori:adventure-api:4.16.0" - shade "net.kyori:adventure-text-serializer-gson:4.16.0" + // All Projects + shade "me.hypherionmc.moon-config:core:${moon_config}" + shade "me.hypherionmc.moon-config:toml:${moon_config}" + shade "com.hypherionmc:rpcsdk:${rpc_sdk}" + shade "me.hypherionmc.sdlink:mcdiscordformatter-1.20.3:${discord_formatter}" + shade "net.kyori:adventure-api:${adventure}" + shade "net.kyori:adventure-text-serializer-gson:${adventure}" compileOnly("org.projectlombok:lombok:${lombok}") annotationProcessor("org.projectlombok:lombok:${lombok}") @@ -75,7 +67,7 @@ subprojects { 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), 'Timestamp' : System.currentTimeMillis(), 'Built-On-Java' : "${System.getProperty('java.vm.version')} (${System.getProperty('java.vm.vendor')})", - 'Build-On-Minecraft' : minecraft_version + 'Built-On-Minecraft' : minecraft_version ]) } } @@ -85,7 +77,6 @@ subprojects { * = DO NOT EDIT BELOW THIS LINE UNLESS YOU KNOW WHAT YOU ARE DOING = * =============================================================================== */ - unimined.minecraft(sourceSets.main, true) { version minecraft_version @@ -100,90 +91,9 @@ subprojects { it.options.release = 17 } - tasks.withType(GenerateModuleMetadata) { + tasks.withType(GenerateModuleMetadata).configureEach { enabled = false } - - clean { - delete "$rootDir/artifacts" - } - - if (project.name !== 'Common') { - tasks.register('delDevJar') { - doLast { - def tree = fileTree('build/libs') - tree.include '**/*-dev-shadow.jar' - tree.include '**/*-dev.jar' - tree.include '**/*-all.jar' - tree.include '**/*-slim.jar' - tree.each { it.delete() } - } - } - build.finalizedBy delDevJar - - tasks.register('copyAllArtifacts', Copy) { - from "$buildDir/libs" - into "$rootDir/artifacts" - include("*.jar") - } - - build.finalizedBy(copyAllArtifacts) - } } -// Standalone or Module JARS -tasks.register('rpcJar', Jar) { - dependsOn(compileJava) - includeEmptyDirs = false - archivesBaseName = "${mod_name}-modules-${minecraft_version}" - version = final_version - setArchiveClassifier("rpc") - - from project(":Common").sourceSets.main.output -} - -tasks.register('configJar', Jar) { - dependsOn(compileJava) - includeEmptyDirs = false - archivesBaseName = "${mod_name}-modules-${minecraft_version}" - version = final_version - setArchiveClassifier("config") - - from project(":Common").sourceSets.main.output - include("**\\core\\config\\**\\*", "**\\**\\CraterConstants.*") -} - -tasks.register('eventsJar', Jar) { - dependsOn(compileJava) - includeEmptyDirs = false - archivesBaseName = "${mod_name}-modules-${minecraft_version}" - version = final_version - setArchiveClassifier("events") - - from project(":Common").sourceSets.main.output - include("**\\core\\event\\**\\*", "**\\**\\CraterConstants.*") -} - -publishing { - publications { - mavenJava(MavenPublication) { - groupId project.group - artifactId "${mod_name}-modules-${minecraft_version}" - version project.version - - artifact rpcJar - artifact eventsJar - artifact configJar - } - } - - repositories { - maven { - url "https://maven.firstdark.dev/" + (project.release ? "releases" : "snapshots") - credentials { - username System.getenv("MAVEN_USER") - password System.getenv("MAVEN_PASS") - } - } - } -} \ No newline at end of file +// TODO MODULE JARS \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 33acbb7..b6b6230 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ #Project -version_major=1 -version_minor=1 -version_patch=2 +version_major=2 +version_minor=0 +version_patch=0 #Mod mod_author=HypherionSA @@ -26,10 +26,14 @@ neoforge_version=73-beta mod_menu_version=8.0.0-beta.2 moon_config=1.0.9 lombok=1.18.32 +adventure=4.16.0 +rpc_sdk=1.0 +discord_formatter=2.0.0 # Publishing curse_id=867099 modrinth_id=Nn8Wasaq +release_type=experimental # Gradle org.gradle.jvmargs=-Xmx3G