@@ -3,69 +3,60 @@ import dev.xpple.seedmapper.buildscript.GenerateBuildInfoTask
33import net.fabricmc.loom.task.prod.ClientProductionRunTask
44
55plugins {
6- id ' fabric-loom' version " ${ fabric_loom_version} "
7- id ' maven -publish'
6+ id ' net.fabricmc. fabric-loom' version " ${ fabric_loom_version} "
7+ id ' me.modmuss50.mod -publish-plugin ' version " ${ mod_publish_plugin_version } "
88}
99
10+ version = project. mod_version
11+ group = project. maven_group
12+
1013base {
11- archivesName = project. archives_base_name
12- version = project. mod_version
13- group = project. maven_group
14+ archivesName = project. archives_base_name
1415}
1516
1617loom {
17- accessWidenerPath = file(' src/main/resources/seedmapper.aw' )
18+ accessWidenerPath = file(' src/main/resources/seedmapper.aw' )
1819}
1920
2021repositories {
21- mavenCentral()
22- maven {
23- name = ' xpple'
24- url = ' https://maven.xpple.dev/maven2'
25- }
26- maven {
27- name = ' ParchmentMC'
28- url = ' https://maven.parchmentmc.org'
29- }
30- maven {
31- name = ' DJtheRedstoner'
32- url = ' https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1'
33- }
34- maven {
35- name = ' MeteorDevelopment'
36- url = ' https://maven.meteordev.org/snapshots'
37- }
22+ mavenCentral()
23+ maven {
24+ name = ' xpple'
25+ url = ' https://maven.xpple.dev/maven2'
26+ }
27+ maven {
28+ name = ' DJtheRedstoner'
29+ url = ' https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1'
30+ }
31+ maven {
32+ name = ' MeteorDevelopment'
33+ url = ' https://maven.meteordev.org/snapshots'
34+ }
3835}
3936
4037dependencies {
41- minecraft " com.mojang:minecraft:${ project.minecraft_version} "
42- mappings loom. layered {
43- officialMojangMappings {
44- nameSyntheticMembers = true
45- }
46- parchment " org.parchmentmc.data:${ project.parchment_mappings} "
47- }
48- modImplementation " net.fabricmc:fabric-loader:${ project.fabric_loader_version} "
49-
50- modImplementation " net.fabricmc.fabric-api:fabric-api:${ project.fabric_api_version} "
51- productionRuntimeMods " net.fabricmc.fabric-api:fabric-api:${ project.fabric_api_version} "
52-
53- include modImplementation(" dev.xpple:clientarguments:${ project.clientarguments_version} " )
54- include modImplementation(" dev.xpple:betterconfig-fabric:${ project.betterconfig_version} " )
55- include modImplementation(" dev.xpple:simplewaypoints:${ project.simplewaypoints_version} " )
56-
57- modRuntimeOnly(" me.djtheredstoner:DevAuth-fabric:${ project.devauth_version} " ) {
58- exclude group : ' net.fabricmc' , module : ' fabric-loader'
59- }
60- productionRuntimeMods(" me.djtheredstoner:DevAuth-fabric:${ project.devauth_version} " ) {
61- exclude group : ' net.fabricmc' , module : ' fabric-loader'
62- }
63-
64- modCompileOnly " meteordevelopment:baritone:${ project.baritone_version} "
65-
66- testImplementation platform(" org.junit:junit-bom:${ project.junit_version} " )
67- testImplementation ' org.junit.jupiter:junit-jupiter'
68- testRuntimeOnly ' org.junit.platform:junit-platform-launcher'
38+ minecraft " com.mojang:minecraft:${ project.minecraft_version} "
39+ implementation " net.fabricmc:fabric-loader:${ project.fabric_loader_version} "
40+
41+ implementation " net.fabricmc.fabric-api:fabric-api:${ project.fabric_api_version} "
42+ productionRuntimeMods " net.fabricmc.fabric-api:fabric-api:${ project.fabric_api_version} "
43+
44+ include implementation(" dev.xpple:clientarguments:${ project.clientarguments_version} " )
45+ include implementation(" dev.xpple:betterconfig-fabric:${ project.betterconfig_version} " )
46+ include implementation(" dev.xpple:simplewaypoints:${ project.simplewaypoints_version} " )
47+
48+ runtimeOnly(" me.djtheredstoner:DevAuth-fabric:${ project.devauth_version} " ) {
49+ exclude group : ' net.fabricmc' , module : ' fabric-loader'
50+ }
51+ productionRuntimeMods(" me.djtheredstoner:DevAuth-fabric:${ project.devauth_version} " ) {
52+ exclude group : ' net.fabricmc' , module : ' fabric-loader'
53+ }
54+
55+ compileOnly " meteordevelopment:baritone:${ project.baritone_version} "
56+
57+ testImplementation platform(" org.junit:junit-bom:${ project.junit_version} " )
58+ testImplementation ' org.junit.jupiter:junit-jupiter'
59+ testRuntimeOnly ' org.junit.platform:junit-platform-launcher'
6960}
7061
7162clean {
@@ -80,63 +71,92 @@ compileJava.dependsOn('createJavaBindings')
8071createJavaBindings. dependsOn(clean)
8172
8273tasks. register(' generateBuildInfo' , GenerateBuildInfoTask ) {
83- outputFile = new File (temporaryDir, " build_info.json" )
74+ outputFile = new File (temporaryDir, " build_info.json" )
8475}
8576
8677tasks. register(" prodClient" , ClientProductionRunTask ) {
87- runDir = file(" run" )
78+ runDir = file(" run" )
8879
89- jvmArgs. add(" -Ddevauth.enabled=true" )
80+ jvmArgs. add(" -Ddevauth.enabled=true" )
9081
91- javaLauncher = javaToolchains. launcherFor {
92- languageVersion = JavaLanguageVersion . of(23 )
93- }
82+ javaLauncher = javaToolchains. launcherFor {
83+ languageVersion = JavaLanguageVersion . of(25 )
84+ }
9485}
9586
9687processResources {
97- def props = [version : project. mod_version, minecraft_version_dependency : project. minecraft_version_dependency, loader_version : project. fabric_loader_version]
98- inputs. properties props
99- filteringCharset " UTF-8"
88+ def props = [version : project. mod_version, minecraft_version_dependency : project. minecraft_version_dependency, loader_version : project. fabric_loader_version]
89+ inputs. properties props
90+ filteringCharset " UTF-8"
10091
101- filesMatching(" fabric.mod.json" ) {
102- expand props
103- }
92+ filesMatching(" fabric.mod.json" ) {
93+ expand props
94+ }
10495
105- from(" LICENSE" ) {
106- rename {" ${ it} _${ project.base.archivesName.get()} " }
107- }
96+ from(" LICENSE" ) {
97+ rename {" ${ it} _${ project.base.archivesName.get()} " }
98+ }
10899
109- from(" src/main/c/cubiomes/LICENSE" ) {
110- rename {" ${ it} _cubiomes" }
111- }
100+ from(" src/main/c/cubiomes/LICENSE" ) {
101+ rename {" ${ it} _cubiomes" }
102+ }
112103
113- from(" src/main/c/cubiomes/loot/LICENSE_loot_library.h.txt" )
104+ from(" src/main/c/cubiomes/loot/LICENSE_loot_library.h.txt" )
114105
115- from generateBuildInfo
106+ from generateBuildInfo
116107}
117108
118109tasks. withType(JavaCompile ). configureEach {
119- it. options. release = 23
110+ it. options. release = 25
120111}
121112
122113java {
123- sourceCompatibility = JavaVersion . VERSION_23
124- targetCompatibility = JavaVersion . VERSION_23
114+ sourceCompatibility = JavaVersion . VERSION_25
115+ targetCompatibility = JavaVersion . VERSION_25
125116}
126117
127118test {
128- useJUnitPlatform()
119+ useJUnitPlatform()
129120}
130121
131- publishing {
132- publications {
133- mavenJava(MavenPublication ) {
134- artifactId = project. base. archivesName. get()
135- from components. java
136- }
137- }
122+ publishMods {
123+ def artifactFile = base. getLibsDirectory(). file(jar. archiveFileName)
124+ if (! artifactFile. isPresent()) {
125+ logger. lifecycle(" Artifact not present!" )
126+ return
127+ }
128+ def changeLogText = providers. fileContents(layout. projectDirectory. file(" changelog.md" )). asText
129+ if (! changeLogText. isPresent()) {
130+ logger. lifecycle(" Changelog file not found!" )
131+ return
132+ }
133+
134+ displayName = " Release ${ project.mod_version} "
135+ type = STABLE
136+ modLoaders. add(' fabric' )
137+ github {
138+ changelog = changeLogText. map {" Download available [on Modrinth](https://modrinth.com/mod/seedmapper/version/${ project.mod_version} ).\n\n ${ it} " }
138139
139- repositories {
140+ repository = ' xpple/SeedMapper'
141+ accessToken = providers. environmentVariable(" GITHUB_TOKEN" )
142+ commitish = ' master'
143+ tagName = " v${ project.mod_version} "
140144
141- }
145+ allowEmptyFiles = true
146+ }
147+ modrinth {
148+ file = artifactFile
149+ changelog = changeLogText
150+
151+ projectId = " C4GbEnuY"
152+ accessToken = providers. environmentVariable(" MODRINTH_TOKEN" )
153+ project. minecraft_version_list. split(' \\ s*,\\ s*' ). toList(). forEach {minecraftVersions. add(it)}
154+
155+ embeds {
156+ slug = ' betterconfig'
157+ }
158+ embeds {
159+ slug = ' simplewaypoints'
160+ }
161+ }
142162}
0 commit comments