-
Notifications
You must be signed in to change notification settings - Fork 2
/
build.gradle.kts
115 lines (96 loc) · 3.69 KB
/
build.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
/*
* Copyright (c) 2022-2024 Leon Linhart
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
import io.github.themrmilchmann.gradle.publish.curseforge.*
plugins {
alias(buildDeps.plugins.loom)
id("io.github.themrmilchmann.java-conventions")
id("io.github.themrmilchmann.curseforge-publish-conventions")
}
tasks {
processResources {
val version = "${project.version}"
inputs.property("version", version)
filesMatching("fabric.mod.json") {
expand("version" to version)
}
}
}
curseforge {
publications {
named("fabric") {
projectId = "715346" // https://www.curseforge.com/minecraft/mc-mods/ae2cc-bridge
artifacts.named("main") {
displayName = "AE2CC Bridge ${project.version}"
changelog {
format = ChangelogFormat.MARKDOWN
val modVersionSegment = version.toString().substringBefore('-')
val mcVersionSegment = version.toString().substring(startIndex = modVersionSegment.length + 1).substringBefore('-')
val mcVersionGroup = if (mcVersionSegment.count { it == '.' } == 1) mcVersionSegment else mcVersionSegment.substringBeforeLast('.')
val loaderVersionSegment = version.toString().substring(startIndex = modVersionSegment.length + mcVersionSegment.length + 2)
content = File(rootDir, "docs/changelog/$mcVersionGroup/${modVersionSegment}-${mcVersionSegment}-${loaderVersionSegment}.md").readText()
}
}
}
}
}
repositories {
mavenCentral()
maven(url = "https://maven.bai.lol") {
content {
includeGroup("lol.bai")
includeGroup("mcp.mobius.waila")
}
}
maven(url = "https://maven.shedaniel.me/") {
content {
includeGroup("me.shedaniel.cloth")
includeGroup("me.shedaniel.cloth.api")
}
}
maven(url = "https://maven.terraformersmc.com/") {
content {
includeGroup("com.terraformersmc")
}
}
maven(url = "https://modmaven.dev/") {
content {
includeGroup("appeng")
includeGroup("mezz.jei")
}
}
maven(url = "https://squiddev.cc/maven") {
content {
includeGroup("cc.tweaked")
includeGroup("org.squiddev")
}
}
}
dependencies {
minecraft(libs.minecraft)
mappings(loom.officialMojangMappings())
compileOnly(libs.jsr305)
modImplementation(libs.fabric.api)
modImplementation(libs.fabric.loader)
modImplementation(libs.ae2)
modImplementation(libs.ccTweakedApi)
modRuntimeOnly(libs.ccTweaked)
}