Skip to content

Commit

Permalink
Changes
Browse files Browse the repository at this point in the history
  • Loading branch information
Gaz492 committed Aug 1, 2023
1 parent a6fa8b7 commit c1adf4b
Show file tree
Hide file tree
Showing 9 changed files with 142 additions and 78 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Changelog

Something something changelog

## [0.0.0]

- A new mod
110 changes: 86 additions & 24 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,33 +1,43 @@
plugins {
id 'fabric-loom' version '1.2-SNAPSHOT' apply(false)
id 'fabric-loom' version '1.3-SNAPSHOT' apply(false)
id 'net.minecraftforge.gradle' version '[6.0,6.2)' apply(false)
id 'org.spongepowered.gradle.vanilla' version '0.2.1-SNAPSHOT' apply(false)
id("org.spongepowered.mixin") version "0.7-SNAPSHOT" apply(false)
id "org.spongepowered.mixin" version "${mixin_version}" apply(false)
id "me.modmuss50.mod-publish-plugin" version "0.2.1"
}

ext.isSnapshot = providers.environmentVariable("SNAPSHOT").map { it == "true" }.getOrElse(false)

allprojects {
version = "${mod_version}+mc${minecraft_version}${isSnapshot ? '-SNAPSHOT' : ''}"
}

subprojects {
apply plugin: 'java'
apply plugin: 'maven-publish'

base {
archivesName = "${mod_name}-${project.name}"
}

java.toolchain.languageVersion = JavaLanguageVersion.of(17)
java.withSourcesJar()
java.withJavadocJar()


jar {
from(rootProject.file("LICENSE")) {
rename { "${it}_${mod_name}" }
}
manifest {
attributes([
'Specification-Title' : mod_name,
'Specification-Vendor' : mod_author,
'Specification-Version' : project.jar.archiveVersion,
'Implementation-Title' : project.name,
'Implementation-Version' : project.jar.archiveVersion,
'Implementation-Vendor' : mod_author,
'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')})",
'Built-On-Minecraft' : minecraft_version
'Specification-Title' : mod_name,
'Specification-Vendor' : mod_author,
'Specification-Version' : project.jar.archiveVersion,
'Implementation-Title' : project.name,
'Implementation-Version' : project.jar.archiveVersion,
'Implementation-Vendor' : mod_author,
'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')})",
'Built-On-Minecraft' : minecraft_version
])
}
}
Expand All @@ -40,18 +50,10 @@ subprojects {

repositories {
mavenCentral()
maven {
name = 'Sponge / Mixin'
url = 'https://repo.spongepowered.org/repository/maven-public/'
}
maven {
name = 'BlameJared Maven (JEI / CraftTweaker / Bookshelf)'
url = 'https://maven.blamejared.com'
}
}

tasks.withType(JavaCompile).configureEach {

it.options.encoding = 'UTF-8'
it.options.getRelease().set(17)
}
Expand All @@ -69,4 +71,64 @@ subprojects {

enabled = false
}

publishing {
repositories {
if (providers.environmentVariable("MAVEN_TOKEN").orNull) {
maven {
url "${nanite_maven_url}${isSnapshot ? 'snapshots' : 'releases'}"
credentials {
username = "admin"
password = providers.environmentVariable("MAVEN_TOKEN").get()
}
}
}
}
}
}

publishMods {
dryRun = providers.environmentVariable("CURSE_TOKEN").getOrNull() == null
changelog = file("./CHANGELOG.md").text
type = STABLE

def options = curseforgeOptions {
projectId = "${curseforge_id}"
accessToken = providers.environmentVariable("CURSE_TOKEN")
minecraftVersions.add("${minecraft_version}")
}
curseforge("curseforgeForge") {
from options
displayName = "${project.name} Forge ${mod_version}+mc${minecraft_version}"
file = project.provider { project(":forge").tasks.jar }.flatMap { it.archiveFile }
modLoaders.add("forge")
modLoaders.add("Java 17")
}

curseforge("curseforgeFabric") {
from options
displayName = "${project.name} Fabric ${mod_version}+mc${minecraft_version}"
file = project.provider { project(":fabric").tasks.remapJar }.flatMap { it.archiveFile }
modLoaders.add("fabric")
modLoaders.add("Java 17")

requires {
slug = "fabric-api"
}

}

modrinth {
projectId = "abcdef"
accessToken = providers.environmentVariable("MODRINTH_TOKEN")
minecraftVersions.add("1.20.1")
}

github {
file = project.provider { project(":forge").tasks.jar }.flatMap { it.archiveFile }
additionalFiles.from project.provider { project(":fabric").tasks.remapJar }.flatMap { it.archiveFile }
repository = "${github_repo}"
accessToken = providers.environmentVariable("GITHUB_TOKEN")
commitish = providers.environmentVariable("GITHUB_SHA").orElse("dryRun")
}
}
31 changes: 15 additions & 16 deletions common/build.gradle
Original file line number Diff line number Diff line change
@@ -1,22 +1,26 @@
plugins {
id 'idea'
id 'java'
id 'maven-publish'
id 'org.spongepowered.gradle.vanilla'
id 'fabric-loom'
}
base {
archivesName = "${mod_name}-common-${minecraft_version}"

dependencies {
minecraft "com.mojang:minecraft:${minecraft_version}"
mappings loom.officialMojangMappings()
compileOnly group: 'org.spongepowered', name: 'mixin', version: '0.8.5'
}
minecraft {
version(minecraft_version)
if(file("src/main/resources/${mod_id}.accesswidener").exists()){
accessWideners(file("src/main/resources/${mod_id}.accesswidener"))

repositories {
maven {
name = 'Creeperhost'
url = 'https://maven.creeperhost.net/'
}
}

dependencies {
compileOnly group:'org.spongepowered', name:'mixin', version:'0.8.5'
implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.1'
loom {
if (project(":common").file("src/main/resources/${mod_id}.accesswidener").exists()) {
accessWidenerPath.set(project(":common").file("src/main/resources/${mod_id}.accesswidener"))
}
}

publishing {
Expand All @@ -26,9 +30,4 @@ publishing {
from components.java
}
}
repositories {
maven {
url "file://" + System.getenv("local_maven")
}
}
}
1 change: 1 addition & 0 deletions common/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
fabric.loom.dontRemap=true
13 changes: 2 additions & 11 deletions fabric/build.gradle
Original file line number Diff line number Diff line change
@@ -1,18 +1,14 @@
plugins {
id 'java'
id 'idea'
id 'maven-publish'
id 'fabric-loom'
}
base {
archivesName = "${mod_name}-fabric-${minecraft_version}"
}

dependencies {
minecraft "com.mojang:minecraft:${minecraft_version}"
mappings loom.officialMojangMappings()
modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}"
modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_version}"
implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.1'
implementation project(":common")
}

Expand Down Expand Up @@ -60,9 +56,4 @@ publishing {
from components.java
}
}
repositories {
maven {
url "file://" + System.getenv("local_maven")
}
}
}
}
2 changes: 1 addition & 1 deletion fabric/src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"schemaVersion": 1,
"id": "mod_id",
"version": "${version}",
"version": "${mod_version}",
"name": "${mod_name}",
"description": "This is an example description! Tell everyone what your mod is about!",
"authors": [
Expand Down
14 changes: 3 additions & 11 deletions forge/build.gradle
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
plugins {
id 'idea'
id 'maven-publish'
id 'net.minecraftforge.gradle'
id 'org.spongepowered.mixin'
}
base {
archivesName = "${mod_name}-forge-${minecraft_version}"
}

mixin {
add(sourceSets.main, "${mod_id}.refmap.json")

Expand Down Expand Up @@ -75,7 +72,7 @@ sourceSets.main.resources.srcDir 'src/generated/resources'
dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
compileOnly project(":common")
annotationProcessor("org.spongepowered:mixin:0.8.5-SNAPSHOT:processor")
annotationProcessor("org.spongepowered:mixin:0.8.5:processor")
}

tasks.withType(JavaCompile).configureEach {
Expand All @@ -102,9 +99,4 @@ publishing {
fg.component(it)
}
}
repositories {
maven {
url "file://" + System.getenv("local_maven")
}
}
}
}
18 changes: 13 additions & 5 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,22 +1,30 @@
# Project
version=1.0.0
mod_version=1.0.0
group=com.example.examplemod

# Common
minecraft_version=1.20
minecraft_version=1.20.1

# Forge
forge_version=46.0.12
forge_version=47.1.5

# Fabric
fabric_version=0.83.0+1.20
fabric_version=0.86.1+1.20.1
fabric_loader_version=0.14.21

# Mod options
mod_name=ExampleMod
mod_author=Jared
mod_author=Gaz
mod_id=examplemod

# Publishing
curseforge_id=123456
github_repo=Example/MyMod
maven_url=https://maven.example.com/

# Other
mixin_version=0.7.+

# Gradle
org.gradle.jvmargs=-Xmx3G
org.gradle.daemon=false
24 changes: 14 additions & 10 deletions settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,21 @@ pluginManagement {
repositories {
gradlePluginPortal()
maven {
name = 'Forge'
url = 'https://maven.minecraftforge.net/'
}
maven {
name = 'Fabric'
url = 'https://maven.fabricmc.net/'
}
maven {
name = 'Sponge Snapshots'
url = 'https://repo.spongepowered.org/repository/maven-public/'
name = 'Creeperhost'
url = 'https://maven.creeperhost.net/'
}
// maven {
// name = 'Forge'
// url = 'https://maven.minecraftforge.net/'
// }
// maven {
// name = 'Fabric'
// url = 'https://maven.fabricmc.net/'
// }
// maven {
// name = 'Sponge Snapshots'
// url = 'https://repo.spongepowered.org/repository/maven-public/'
// }
}
}

Expand Down

0 comments on commit c1adf4b

Please sign in to comment.