diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index fcaeef8e..740010ae 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -25,7 +25,7 @@ jobs: - name: Set up Java uses: actions/setup-java@v5 with: - java-version: 8 + java-version: 25 distribution: temurin cache: gradle @@ -36,11 +36,16 @@ jobs: uses: gradle/actions/setup-gradle@v6 - name: Build - run: ./gradlew build + run: ./gradlew reobfShadowJar - - name: Publish + - name: Publishing Curseforge if: github.event_name == 'push' && github.ref_protected && github.ref_type == 'branch' - run: ./gradlew publishMods + run: ./gradlew publishCurseforge env: CURSETOKEN: ${{ secrets.CURSETOKEN }} + + - name: Publishing Modrinth + if: github.event_name == 'push' && github.ref_protected && github.ref_type == 'branch' + run: ./gradlew publishModrinth + env: MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }} \ No newline at end of file diff --git a/README.md b/README.md index f59d2ee5..c692462a 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,8 @@ ### Build -- ``./gradlew build`` +- ``./gradlew build`` or +- ``./gradlew reobfShadowJar`` ### License diff --git a/build.gradle b/build.gradle index e6bb6712..2cc5ebf6 100644 --- a/build.gradle +++ b/build.gradle @@ -1,22 +1,11 @@ -buildscript { - repositories { - maven { url = 'https://maven.minecraftforge.net/' } - maven { url = 'https://plugins.gradle.org/m2/' } - mavenCentral() - } - dependencies { - classpath 'net.minecraftforge.gradle:ForgeGradle:6.0.+' - classpath "gradle.plugin.com.matthewprenger:CurseGradle:1.4.0" - classpath "com.modrinth.minotaur:Minotaur:2.+" - } +plugins { + id 'net.minecraftforge.gradle' version '6.0.+' + id 'com.gradleup.shadow' version '9.2.0+' + id 'eclipse' + id 'net.darkhax.curseforgegradle' version '1.3.+' + id "com.modrinth.minotaur" version "2.+" } -apply plugin: 'net.minecraftforge.gradle' -apply plugin: 'eclipse' -apply plugin: 'maven-publish' -apply plugin: 'com.matthewprenger.cursegradle' -apply plugin: 'com.modrinth.minotaur' - group = project.mod_group version = project.mod_version @@ -56,6 +45,14 @@ dependencies { } jar { + enabled = false +} + +shadowJar { + archiveClassifier.set('') + configurations = [] + relocate 'com.troblecodings.linkableapi', "${project.group}.tcredstone.shadow.linkableapi" + manifest { attributes([ "Specification-Title": project.mod_name, @@ -67,27 +64,31 @@ jar { "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") ]) } -} - -jar.finalizedBy('reobfJar') -def key = System.getenv("CURSETOKEN") -if (key == null) - key = 'dev' - -curseforge { - apiKey = key - - project { - id = project.curseforge_project_id + from("changelog.md") + from("LICENSE") +} - changelog = file("changelog.md") - changelogType = "markdown" +reobf { + shadowJar {} +} - releaseType = "release" +tasks.named("build") { + dependsOn("reobfShadowJar") +} - addGameVersion project.minecraft_version - } +tasks.register("publishCurseforge", net.darkhax.curseforgegradle.TaskPublishCurseForge) { + def key = System.getenv("CURSETOKEN") + if (key == null) + key = 'dev' + apiToken = key + def mainFile = upload(project.curseforge_project_id, reobfShadowJar) + mainFile.changelog = file("changelog.md").text + mainFile.changelogType = 'markdown' + mainFile.releaseType = 'release' + mainFile.addModLoader("${project.loader}") + mainFile.addEnvironment("Client", "Server") + mainFile.addGameVersion("${project.minecraft_version}") } modrinth { @@ -98,7 +99,7 @@ modrinth { versionNumber = project.version versionName = "${project.mod_name} ${project.version}" - uploadFile = jar + uploadFile = reobfShadowJar gameVersions = [project.minecraft_version] loaders = [project.loader] @@ -106,6 +107,6 @@ modrinth { changelog = file("changelog.md").text } -tasks.register("publishMods") { - dependsOn("curseforge", "modrinth") -} \ No newline at end of file +tasks.register("publishModrinth") { + dependsOn("modrinth") +} diff --git a/changelog.md b/changelog.md index 8c2bad07..e6406f42 100644 --- a/changelog.md +++ b/changelog.md @@ -1,7 +1,13 @@ # Changelog +## [1.15.2 - 3.2.5] + +* chore: update buildscript +* chore: relocate linkableapi + ## [1.15.2 - 3.2.4] +* feat: add item damage * fix: correct redstone update * ref: update buildpipeline diff --git a/gradle.properties b/gradle.properties index 25a8eaae..aeeb8473 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,14 +5,14 @@ org.gradle.daemon=false # Mod Meta mod_name=TC-Redstone mod_group=com.troblecodings -mod_version=3.2.4 +mod_version=3.2.5 # Minecraft minecraft_version=1.15.2 # Forge forge_version=31.2.57 -loader=forge +loader=Forge # Java java_version=8 diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 00000000..894bacb3 --- /dev/null +++ b/settings.gradle @@ -0,0 +1,10 @@ +pluginManagement { + repositories { + gradlePluginPortal() + maven { url = 'https://maven.minecraftforge.net/' } + } +} + +plugins { + id 'org.gradle.toolchains.foojay-resolver-convention' version '0.7.0' +}